R插入符/混淆矩阵

R caret / Confusion matrix

我想在 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(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")

感谢您的帮助

你可以得到这样的混淆矩阵:

confusionMatrix(predict(fit.lda,dataset$Cos.code),dataset$Cos.code)

你可以用同样的方式为你的测试集计算混淆矩阵,只是切换数据集。

但我相信你的模型应该已经包含了你想要的信息 检查打印这两个对象时给出的信息。

fit.lda

fit.lda$finalModel