ROCRでROC曲線をプロットする方法を教えてください。私は最初に実行する必要があることを知っています:
prediction(predictions, labels, label.ordering = NULL)
その後:
performance(prediction.obj, measure, x.measure="cutoff", ...)
予測とラベルの意味がわかりません。ctree と cforest を使用してモデルを作成しましたが、最終的に両方の ROC 曲線を比較したいと考えています。私の場合、クラス属性は y_n で、ラベルに使用する必要があると思います。しかし、予測はどうですか?私がやっていることのステップは次のとおりです(データセット名= bank_part):
pred<-cforest(y_n~.,bank_part)
tablebank<-table(predict(pred),bank_part$y_n)
prediction(tablebank, bank_part$y_n)
最後の行を実行した後、次のエラーが発生します。
Error in prediction(tablebank, bank_part$y_n) :
Number of cross-validation runs must be equal for predictions and labels.
前もって感謝します!
別の例を次に示します。トレーニング データセット (bank_training) とテスト データセット (bank_testing) があり、以下のように randomForest を実行しました。
bankrf<-randomForest(y~., bank_training, mtry=4, ntree=2,
keep.forest=TRUE,importance=TRUE)
bankrf.pred<-predict(bankrf, bank_testing, type='response')
これで、bankrf.pred はラベル c=("0", "1") を持つ因子オブジェクトになります。それでも、ROC をプロットする方法がわかりません。予測の部分に行き詰まってしまうからです。これが私がすることです
library(ROCR)
pred<-prediction(bankrf.pred$y, bank_testing$c(0,1)
しかし、これはまだ正しくありません。エラー メッセージが表示されるためです。
Error in bankrf.pred$y_n : $ operator is invalid for atomic vectors