我正在使用rpart
制作决策树。例如:
fit <- rpart(Kyphosis ~ Age + Number + Start, data=kyphosis)
如何从文本文件中读取公式部分并以rpart
喜欢的格式获取?我试过了:
predictor_variables <- c("Age", "Number", "Start")
rpart_formula <- Kyphosis ~ parse(text=paste(predictor_variables, collapse="+"))
fit <- rpart(rpart_formula, data=kyphosis)
但是我收到了错误:
invalid type (expression) for variable 'parse(text = paste(predictor_variables, collapse = "+"))'
如何格式化rpart_formula
以便rpart
正确看到它?
答案 0 :(得分:6)
使用as.formula
:
rpart_formula <- as.formula(
paste("Kyphosis ~ ",
paste(predictor_variables, collapse = " + "),
sep = ""
)
)
答案 1 :(得分:0)
尝试将公式简单地作为字符串传递:
rpart_formula <-paste("Kyphosis ~ ",paste(predictor_variables, collapse="+"))
应该通过rpart
强制执行公式。
编辑
如下面的评论中所述,并非所有功能都会对您进行强制执行,因此您不应该依赖此行为,但在这种情况下,rpart
肯定会。< / p>