r-如何将随机森林代码从公式接口更改为矩阵接口



这可能是一个非常简单快捷的问题。我读过将代码从公式接口更改为矩阵接口显著提高了运行时间。

我当前的代码如下:

randomForest(linear_weight ~ ., data = df, importance = T)

如何使用randomForest将此代码更改为矩阵接口?

这么简单吗?

randomForest(df, linear_weight, importance = T)

我猜您想要的是使用x=y=输入,下面是不知道您的数据帧,并假设您的所有自变量都是数字而非分类的:

X_train = as.matrix(df[,setdiff(colnames(df),"linear_weight")])
y_train = df$linear_weight

如果你有分类,那么:

X_train = model.matrix(linear_weight ~ .,data=df)

之后:

randomForest(x = X_train, 
y = y_train, importance = TRUE)

我认为这真的取决于你的数据。此外,如果你有分类变量,如果你考虑将其转换为密集矩阵的时间,我不确定它会更快地

最新更新