1
0
Fork 0
mirror of https://github.com/prise6/aVirtualTwins.git synced 2024-05-12 21:16:32 +02:00
aVirtualTwins/R/tree.reg.R
2015-05-31 21:09:04 +02:00

45 lines
1.1 KiB
R

# VT.TREE.REG -------------------------------------------------------------
VT.tree.reg <- setRefClass(
Class = "VT.tree.reg",
contains = "VT.tree",
methods = list(
initialize = function(vt.difft, threshold = 0.05, sens = ">", screening = NULL){
callSuper(vt.difft, threshold, sens, screening)
.self$name <- .self$computeNameOfTree("reg")
.self$outcome <- .self$vt.difft$difft
},
run = function(...){
callSuper()
data <- .self$getData()
.self$tree <- rpart(as.formula(paste(.self$name, ".", sep = "~")), data = data, ...)
if(.self$sens == ">")
res <- ifelse(predict(.self$tree) >= (.self$threshold), 1, 0)
else
res <- ifelse(predict(.self$tree) <= (.self$threshold), 1, 0)
.self$Ahat <- res
# if(sum(res) != 0) .self$vt.forest$addAhatColumn(name, res)
return(invisible(tree))
},
sumup = function(){
cat("Regression Tree")
callSuper()
}
)
)
VT.tree.reg$lock("threshold", "vt.difft")