gpt4 book ai didi

r - y中的错误-ymean : non-numeric argument to binary operator randomForest R

转载 作者:行者123 更新时间:2023-12-04 10:41:35 25 4
gpt4 key购买 nike

我有一个大约37k x 1024的矩阵,由1和0组成,作为分类变量来指示是否存在特征向量。我通过R中的randomForest包运行此矩阵,如下所示:

rfr <- randomForest(X_train,Y_train)

其中X_train是包含分类变量的矩阵,而Y__train是由矩阵中每一行的标签组成的向量。当我运行此命令时,出现以下错误:
Error in y - ymean : non-numeric argument to binary operator
In addition: Warning message:
In mean.default(y) : argument is not numeric or logical: returning NA

我检查了是否有任何空值或缺少数据,但没有找到任何空值。

我什至把整个东西变成了data.frame并尝试了以下
rfr <- randomForest(labels ~ ., data = featureDF)

仍然有相同的错误。

对此,我将不胜感激,谢谢!

最佳答案

我猜labels是一个字符变量,但是randomForest期望分类结果变量是因素。将其更改为一个因子,然后查看错误是否消失:

featureDF$labels = factor(featureDF$labels) 
randomForest的帮助并未明确表明响应需要成为一个因素,但它暗示:

y  A response vector. If a factor, classification is assumed, otherwise   
regression is assumed. If omitted, randomForest will run in unsupervised mode.


您尚未提供示例数据,因此以下是内置 iris数据的示例:
Species是原始数据帧中的一个因素。让我们将 Species转换为字符:
iris$Species = as.character(iris$Species)
rf <- randomForest(Species ~ ., data=iris)

Error in y - ymean : non-numeric argument to binary operator


Species转换回因数后, randomForest运行无错误。
iris$Species = factor(iris$Species)
rf <- randomForest(Species ~ ., data=iris)

关于r - y中的错误-ymean : non-numeric argument to binary operator randomForest R,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39320408/

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