2013-02-12 47 views
3

我使用ROCR來獲取各種分類算法在我的數據集上的性能度量。雖然我可以檢索AUC指標相對容易地使用下面的代碼示例:從ROCR預測對象中檢索分類器性能指標

predictions <- predict(rfmodel, test, type="prob") 
pred.obj <- prediction(predictions[,2], data$response) 
rfperf <- performance(pred.obj, "tpr","fpr") 
print(sprintf("random forest AUC %f", as.numeric(performance(pred.obj,"auc")@y.values))) 

我有麻煩檢索等檢索其他措施,如準確率,召回,F等爲單一值,我可以包括表在我紙。我試過以下內容:

> p <- performance(pred.obj,"prec", "rec") 
> as.numeric([email protected]) 
Error: (list) object cannot be coerced to type 'double' 

我可以繪製值,但這不是我想要的。有任何想法嗎?

+0

這似乎是一個編程問題。我將舉報移民。 – Erik 2013-02-12 09:50:30

+1

我的問題也有一個統計組件:?unlist函數將返回一個答案向量。什麼是精確度或召回呢?這些數字的意思?中位數? – 2013-02-12 13:59:12

回答

2

問題是輸出是一個列表。嘗試 as.numeric(unlist([email protected]))

+0

感謝這似乎是工作,至少數據提取部分 – 2013-02-12 13:58:28

1

這與函數perf的返回對象的結構有關。使用str會有幫助。

[email protected]是一個列表,其中包含一個元素,它是一個數值向量。 只需使用

[email protected][[1]] 

來提取載體。