首页 文章

R神经网络 - 虹膜数据集混淆矩阵

提问于
浏览
1

我不知道如何计算以下内容:1 . 它预测了哪30个元素? 2.我无法让ConfusionMatrix工作 .

任何帮助赞赏 . 谢谢 .

library(nnet)
attach(iris)

library(caret)
set.seed(3456)
trainIndex <- createDataPartition(iris$Species, p = .8,
                               list = F,
                               times = 1)

irisTrain <- iris[ trainIndex,]
irisTest  <- iris[-trainIndex,]

irispred <- nnet(Species ~ ., data=irisTrain, size=10)
predicted <- predict(irispred,irisTest,type="class")

输出:

预测< - 预测(irispred,irisTest,type =“class”)

predict [1]“setosa”“setosa”“setosa”“setosa”“setosa”“setosa”“setosa”[8]“setosa”“setosa”“setosa”“versicolor”“versicolor”“versicolor”“versicolor” [15]“versicolor”“versicolor”“virginica”“versicolor”“versicolor”“versicolor”“virginica”[22]“virginica”“virginica”“virginica”“virginica”“virginica”“virginica”“virginica”[29 ]“virginica”“virginica”

混淆矩阵错误,不确定第二个参数应该是什么:

confusionMatrix(predict,iris $ Species)表中的错误(data,reference,dnn = dnn,...):所有参数必须具有相同的长度

confusionMatrix(predict,irisTest,positive = 1)sort.list(y)中的错误:'x'必须是'sort.list'的原子'你有没有在列表上调用'sort'? confusionMatrix(predict,iris,positive = 1)sort.list(y)中的错误:'x'必须是'sort.list'的原子'你有没有在列表上调用'sort'?

1 回答

  • 1

    第二个参数应该是 irisTest$Species 中的引用类 . irisTest 是完整的测试数据,包括所有其他列, iris$Species 是整个数据的种类,而不仅仅是测试集 .

    > confusionMatrix(data = predicted, reference = irisTest$Species)
    Confusion Matrix and Statistics
    
                Reference
    Prediction   setosa versicolor virginica
      setosa         10          0         0
      versicolor      0          9         0
      virginica       0          1        10
    
    Overall Statistics
    
                   Accuracy : 0.9667           
    
    [...]
    

相关问题