2016-12-22 2 views
0

En utilisant la fonction confusionMatrix() du paquet caret dans R, comment formatez-vous votre sortie verticalement?Comment formater confusionMatrix caret package

Ma sortie actuelle est la suivante:

$positive 
[1] "spam" 

$table 
      Reference 
Prediction ham spam 
     ham 1201 30 
     spam 6 153 

$overall 
     Accuracy   Kappa AccuracyLower AccuracyUpper AccuracyNull AccuracyPValue 
    9.741007e-01 8.800535e-01 9.643235e-01 9.817960e-01 8.683453e-01 5.647960e-44 
McnemarPValue 
    1.264185e-04 

$byClass 
     Sensitivity   Specificity  Pos Pred Value  Neg Pred Value 
      0.8360656   0.9950290   0.9622642   0.9756296 
      Precision    Recall     F1   Prevalence 
      0.9622642   0.8360656   0.8947368   0.1316547 
     Detection Rate Detection Prevalence Balanced Accuracy 
      0.1100719   0.1143885   0.9155473 

$mode 
[1] "sens_spec" 

Je voudrais quelque chose comme:

Accuracy: 
95% CI 
No Information Rate: 
P-Value [Acc > NIR]: 

Kappa: 
Mcnemar's Test P-Value: 

Sensitivity: 
Specificity: 
Pos Pred Value: 
Neg Pred Value: 
Prevalence: 
Detection Rate: 
Detection Prevalence: 
Balanced Accuracy: 
+0

si vous souhaitez un contrôle complet sur le format d'impression, vous pouvez simplement accéder aux éléments manuellement, par exemple 'matrice de confusion() $ byClass' – slizb

+0

qui commande a vous utilisez pour créer cette sortie? Je reçois généralement un aligné verticalement par défaut. –

+0

J'ai effacé la session, réexécuté le code, et obtenu la sortie que je cherchais la deuxième fois. Je ne suis pas sûr de ce que j'ai fait, mais ça marche maintenant. Merci! –

Répondre

1

Essayez ceci:

t(confusionMatrix()$byClass) 

et ceci:

confusionMatrix()$overall 

En fonction du nombre de classes de vos données, vous pouvez les rbind ou non

+1

merci! Cela fonctionne très bien. Au lieu d'effacer ma session et de refaire mon code, je vais implémenter votre approche –