R 插入符号/混淆矩阵
我想在插入符号库的train()之后显示混淆矩阵,但我有一些疑问。“train()”应该在列车组上(我不确定,因为“control”参数)。测试集上的“predict()”?对整个数据集进行预测似乎很奇怪R 插入符号/混淆矩阵,r,machine-learning,r-caret,R,Machine Learning,R Caret,我想在插入符号库的train()之后显示混淆矩阵,但我有一些疑问。“train()”应该在列车组上(我不确定,因为“control”参数)。测试集上的“predict()”?对整个数据集进行预测似乎很奇怪 # df_corpus = Document Term Matrix + 1 column of Cos.code(class which are 203.2.2, 204.3.2 ...) dataset <- df_corpus control <- trainControl(
# df_corpus = Document Term Matrix + 1 column of Cos.code(class which are 203.2.2, 204.3.2 ...)
dataset <- df_corpus
control <- trainControl(method = "repeatedcv", number = 10, repeats = 3)
seed <- 7
metric <- "Accuracy"
preProcess=c("center", "scale")
# Linear Discriminant Analysis
set.seed(seed)
fit.lda <- train(Cos.code~., data=dataset, method="lda", metric=metric,preProc=c("center", "scale"), trControl=control)
ldaClasses <- predict(fit.lda)
cm <- confusionMatrix(data = ldaClasses, dataset$Cos.code)
F1_score(cm$table, "lda")
#df_corpus=文档术语矩阵+1列Cos.代码(类别为203.2.2、204.3.2…)
dataset您可以得到如下混淆矩阵:
confusionMatrix(predict(fit.lda,dataset$Cos.code),dataset$Cos.code)
您可以用同样的方式为测试集计算混淆矩阵,只需切换数据集
但是我相信你的模型应该已经包含了你想要的信息
检查打印这两个对象时提供的信息
fit.lda
fit.lda$finalModel
我相信你例子中的混淆矩阵实际上是不对的。第一个元素必须是pred,第二个元素必须是true。来自手册:“预测类的一个因子(对于默认方法)或类表的一个对象……要传递给表的选项。注意:此处不包括dnn引用要用作真实结果的类的一个因子”您是对的。我将更新对函数的调用。非常感谢。