在R中如何以百分比(或1的分数)获得混淆矩阵。 “插入符号”包提供了有用的功能,但显示了绝对的样本数。
library(caret)
data(iris)
T <- iris$Species
P <- sample(iris$Species)
confusionMatrix(P, T)
Confusion Matrix and Statistics
Reference
Prediction setosa versicolor virginica
setosa 15 16 19
versicolor 19 16 15
virginica 16 18 16
答案 0 :(得分:6)
如果您想要所有摘要统计信息,则插入符函数很好。如果你关心的只是百分比&#39;混淆矩阵,您可以使用prop.table
和table
。此外,为了将来参考,严格的编程问题应该发布到stackoverflow而不是CrossValidated。
prop.table(table(P,T))
> prop.table(table(P,T))
T
P setosa versicolor virginica
setosa 0.11333333 0.10666667 0.11333333
versicolor 0.09333333 0.13333333 0.10666667
virginica 0.12666667 0.09333333 0.11333333
如果您想保留来自插入符号的摘要统计信息,只需在compusion矩阵对象上进行预测。
prop.table(caret::confusionMatrix(P,T)$table)