R - 随机森林 - 删除训练数据中不存在的新因子水平
R - Random Forest - Delete New factor levels not present in the training data
我正在使用随机森林包调试代码,之前几乎没有 R 经验。
我在执行 predict.randomForest
时遇到了错误:
New factor levels not present in the training data.
搜索此站点我找到了原因并明白我需要删除导致问题的记录。
我如何隔离(找出)导致问题的 columns/rows?
假设您有 train.data,您用于构建模型,test.data,您现在想要获得预测,以及您的因子变量 factor.var1,那么您可以执行以下操作:
levels(test.data$factor.var1) %in% levels(train.data$factor.var1)
这将生成一个与 test.data 中的因子水平相对应的逻辑向量,其中 "FALSE" 条目是 train.data 中不存在的因子水平。
simple.solutions 这将是 rbind 测试数据与训练数据和预测,然后子集你想要预测的行。这对我有用
我正在使用随机森林包调试代码,之前几乎没有 R 经验。
我在执行 predict.randomForest
时遇到了错误:
New factor levels not present in the training data.
搜索此站点我找到了原因并明白我需要删除导致问题的记录。
我如何隔离(找出)导致问题的 columns/rows?
假设您有 train.data,您用于构建模型,test.data,您现在想要获得预测,以及您的因子变量 factor.var1,那么您可以执行以下操作:
levels(test.data$factor.var1) %in% levels(train.data$factor.var1)
这将生成一个与 test.data 中的因子水平相对应的逻辑向量,其中 "FALSE" 条目是 train.data 中不存在的因子水平。
simple.solutions 这将是 rbind 测试数据与训练数据和预测,然后子集你想要预测的行。这对我有用