[R] randomForest Error passing string argument

Uwe Ligges ligges at statistik.uni-dortmund.de
Mon Aug 15 22:12:42 CEST 2005


mmv wrote:

> I'm attempting to pass a string argument into the function
> randomForest but I get an error:
> 
> state <- paste(list("fruit ~", "apples+oranges+blueberries",
> "data=fruits.data, mtry=2, do.trace=100, na.action=na.omit,
> keep.forest=TRUE"), sep= " ", collapse="")


I really don't understand why you want it as a character.
I think you probably want to generate arguments dynamically and specify 
them in form of a list, which leads to constructions using do.call() at 
the end.

Anyway, if you really want to call randomForest with the abouve text, I 
guess this is one of tzhe few circumstances where you can do 
eval(parse(.....)):

state <- paste("fruit ~", "apples+oranges+blueberries,",
   "data=fruits.data, mtry=2, do.trace=100, na.action=na.omit,
    keep.forest=TRUE")
the_call <- paste("randomForest(", state, ")")
eval(parse(text=the_call))

Uwe Ligges


> model.rf <- randomForest(state)
> 
> Error in if (n==0) stop ("data(x) has 0 rows") argument is of length zero.
> 
> -Thanks in advance,
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html




More information about the R-help mailing list