Search code examples
rformularpart

Reading rpart Input Parameters from a Text Variable


I'm using rpart to make a decision tree. For example:

fit <- rpart(Kyphosis ~ Age + Number + Start, data=kyphosis)

How do I read in the formula part from a text file and get it in a format that rpart likes? I've tried:

predictor_variables <- c("Age", "Number", "Start")
rpart_formula <- Kyphosis ~ parse(text=paste(predictor_variables, collapse="+"))
fit <- rpart(rpart_formula, data=kyphosis)

but I get an error:

 invalid type (expression) for variable 'parse(text = paste(predictor_variables, collapse = "+"))'

How can I format rpart_formula so that rpart sees it correctly?


Solution

  • Use as.formula:

    rpart_formula <- as.formula(
        paste("Kyphosis ~ ", 
              paste(predictor_variables, collapse = " + "), 
              sep = ""
        )
    )