首页 > 解决方案 > RandomForest 不接受公式 RHS 上的 log()

问题描述

我试图在给定公式的 RHS 上对变量进行日志转换RandomForest,这会返回一个错误(模型m1)。但是,如果日志在 LHS 上,则不是问题(模型m2)。

library(randomForest)
m1 = randomForest(mpg ~ log(wt)+cyl+disp, data = mtcars)

eval(expr,envir,enclos)中的错误:找不到对象'wt'

m2 = randomForest(log(mpg) ~ wt+cyl+disp, data = mtcars)

其他功能,例如lmRHS 上的日志没有问题。

m3 = lm(mpg ~ log(wt)+cyl+disp, data = mtcars)

是否有任何解决方法或者我必须转换数据集?我尝试过使用I(),但它也返回错误。

m4 = randomForest(mpg ~ I(log(wt))+cyl+disp, data = mtcars)

唯一错误(c(“AsIs”,oldClass(x))):找不到对象'wt'

标签: r

解决方案


推荐阅读