错误::新数据中的预测变量类型与训练数据不匹配

数据挖掘 机器学习 数据挖掘 r 分类 随机森林
2022-02-22 11:23:16

我正在使用randomForest. 尝试预测时出现以下错误

新数据中的预测变量类型与训练数据中的预测变量类型不匹配

我确保测试和训练数据具有相同的水平。

我还包括

levels(test_var) <- levels(train_var)

以确保级别匹配。

但是我最终还是得到了这个错误,还有什么我应该寻找的吗?

**EDITED ON 3rd Aug 2015**

这是训练数据集的结构

在此处输入图像描述

测试数据集的结构

在此处输入图像描述

应用训练数据

在此处输入图像描述

Sapply 测试数据

在此处输入图像描述

为了确保训练数据集和测试数据集之间的级别匹配,我编写了这个循环来查看数据集之间是否存在任何差异

for(i in 1:28) 

 {
   if(is.factor(testing[,i]))
    {

    print(names((testing[i])))
    difference_in_test = setdiff(levels(testing[,i]), levels(training_data[,i]))
      print(difference_in_test)

    }
 }

上述 For 循环的结果表明,级别之间不存在差异。

[1] "VAR1"
character(0)
[1] "VAR2"
character(0)
[1] "VAR3"
character(0)
[1] "VAR4"
character(0)
[1] "VAR5"
character(0)
[1] "VAR7"

我仍然继续收到如下所述的错误:

在此处输入图像描述

8月4日编辑

只有在我的数据集中包含这样的过滤器后,我才开始收到上述错误:

训练数据 <- 子集(训练数据,性别!=“F”)

0个回答
没有发现任何回复~