R 计算朴素贝叶斯分类器的准确度、精确度和召回率(手动计算)
是一种新的R和NB分级机。我想确认我手工计算的准确度、精密度和召回率是正确的。我还想知道是否有任何软件包可用于此类计算 为了准确起见,我使用了sum diag/总行数 为了精确起见,我对行进行了诊断/求和 回想起来,我做了列的diag/sumR 计算朴素贝叶斯分类器的准确度、精确度和召回率(手动计算),r,precision,naivebayes,R,Precision,Naivebayes,是一种新的R和NB分级机。我想确认我手工计算的准确度、精密度和召回率是正确的。我还想知道是否有任何软件包可用于此类计算 为了准确起见,我使用了sum diag/总行数 为了精确起见,我对行进行了诊断/求和 回想起来,我做了列的diag/sum > t<-CrossTable(test_pred1,test_labels, prop.chisq = T, prop.t = T, prop.r = FALSE, + dnn = c('predicted', 'act
> t<-CrossTable(test_pred1,test_labels, prop.chisq = T, prop.t = T, prop.r = FALSE,
+ dnn = c('predicted', 'actual'))
Cell Contents
|-------------------------|
| N |
| Chi-square contribution |
| N / Col Total |
| N / Table Total |
|-------------------------|
Total Observations in Table: 31
| actual
predicted | f | t | Row Total |
-------------|-----------|-----------|-----------|
f | 6 | 15 | 21 |
| 0.062 | 0.022 | |
| 0.750 | 0.652 | |
| 0.194 | 0.484 | |
-------------|-----------|-----------|-----------|
t | 2 | 8 | 10 |
| 0.131 | 0.045 | |
| 0.250 | 0.348 | |
| 0.065 | 0.258 | |
-------------|-----------|-----------|-----------|
Column Total | 8 | 23 | 31 |
| 0.258 | 0.742 | |
-------------|-----------|-----------|-----------|
提前感谢,您可以使用
caret
软件包中的confusionMatrix()
函数,下面是一个示例:
require(caret)
confusionMatrix(test_pred1, test_labels)
该函数需要两个长度相同的因子向量,“预测”和“实际”。
您可以使用as.factor(test\u pred1)
强制在向量上输入因子类型
有关更多详细信息,请参见
?confusionMatrix
。输出具有分类问题所需的所有指标。我希望有人能完全回答您的问题,尤其是关于您是否正确计算的问题。
require(caret)
confusionMatrix(test_pred1, test_labels)