[英]How to identify used variables in a statistical model in R
我正在使用随机森林生成的模型预测数据。 如何确定模型中使用的预测变量? 我无法摆脱错误:“ eval(predvars,data,env)中的错误:找不到对象'ENERGY'”。
ENERGY列是我要预测的列,在模型生成中不用作变量。 并且此列在varImp(DATA)$ importance中不存在。
predict(model_RF2, newdata = predData)
eval(predvars,data,env)中的错误:找不到对象“ ENERGY”
varImp(DATA)$importance
作为此代码的回复,列出了60列的名称; 而ENERGY不在此向量中。
还有其他方法可以识别模型中使用的列吗?
预测的重要部分是验证新数据框(在您的情况下为predData)具有与原始数据相同的列名。 因此,如果您的原始数据具有ENERGY列,则必须确保predData也具有该列。
请参阅此处的文档: https : //www.rdocumentation.org/packages/rpart/versions/4.1-13/topics/predict.rpart
Quote:“ newdata数据框包含需要进行预测的值。公式(对象)右侧引用的预测变量必须按名称出现在newdata中。”
RF算法显示了用于预测某个变量的重要性。 但是,它并没有显示将要预测的变量的重要性。 由于您要预测“能源”变量,因此在列表中看不到它的名称是正常的。 也;
importance(model_RF2)
和
varImpPlot(model_RF2)
可以向您显示模型中使用的列(变量)。 varImpPlot还描绘了一个漂亮的图形。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.