gpt4 book ai didi

当训练集具有比测试集更多不同的因子水平时,randomForest 不起作用

转载 作者:行者123 更新时间:2023-12-04 11:27:01 24 4
gpt4 key购买 nike

当尝试在因子水平低于我的训练数据的新测试数据上测试我的训练模型时,predict()返回以下内容:

Type of predictors in new data do not match that of the training data.



我的训练数据有一个有 7 个因子水平的变量,而我的测试数据有一个有 6 个因子水平的相同变量(训练数据中的所有 6 个 ARE)。

当我添加一个包含“缺失”第 7 个因子的观察值时,模型会运行,所以我不确定为什么会发生这种情况,甚至不确定它背后的逻辑。

我可以看到测试集是否有更多/不同的因子水平,然后 randomForest 会窒息,但为什么在训练集有“更多”数据的情况下?

最佳答案

R 期望训练数据和测试数据具有完全相同的级别(即使其中一个集合对给定的一个或多个级别没有观察值)。在您的情况下,由于测试数据集缺少火车具有的级别,您可以这样做

test$val <- factor(test$val, levels=levels(train$val))

以确保它具有所有相同的级别并且它们的编码相同。

(重新发布在这里以结束问题)

关于当训练集具有比测试集更多不同的因子水平时,randomForest 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24872489/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com