gpt4 book ai didi

r - 如何获得R中的预测精度?

转载 作者:行者123 更新时间:2023-11-30 08:52:36 24 4
gpt4 key购买 nike

我尝试使用“cyl”作为因子变量来预测“mtcars”数据中的“cyl”:

data(mtcars)
mtcars$cyl <- as.factor(mtcars$cyl)

我将数据集分为“训练”和“测试”:

inTrain = inTrain <- createDataPartition(y=mtcars$cyl,p=0.75, list=FALSE)
training = mtcars[ inTrain,]
testing = mtcars[-inTrain,]

并拟合随机森林模型:

modelRF <- train(cyl ~ .,method="rf",data=training)
predRF <- predict(modelRF,testing)

目前我尝试使用confusionMatrix函数获得预测精度:

confusionMatrix(testing$cyl, predict(predRF, newdata = testing))

...但我不断收到此错误:

Error in UseMethod("predict") : 
no applicable method for 'predict' applied to an object of class "factor"

我做错了什么?有没有更好的方法来获得预测精度?

最佳答案

你似乎有点困惑。 predRF根据定义,它已经是一个预测 - 它不是您可以有意义地输入 predict() 的东西。 。因此,您将得到如下的混淆矩阵:

> confusionMatrix(testing$cyl,predRF)
Confusion Matrix and Statistics

Reference
Prediction 4 6 8
4 2 0 0
6 0 1 0
8 0 0 3

此外,还有一行以 inTrain = inTrain <- 开头看起来有点奇怪,尽管语法上是有效的。我强烈建议您仔细查看您的代码,因为我怀疑那里可能还隐藏着一些错误。

关于r - 如何获得R中的预测精度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27194895/

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