ROC 曲線の作成方法を理解するのに苦労しており、モデルを正しく作成していない可能性があるという結論に達しました。クラス属性「y_n」が 0 または 1 のデータセットでランダムフォレスト モデルを実行しています。予測目的でデータセットを bank_training と bank_testing に分割しました。私が行う手順は次のとおりです。
bankrf <- randomForest(y_n~., data=bank_training, mtry=4, ntree=2,
keep.forest=TRUE, importance=TRUE)
bankrf.pred <- predict(bankrf, bank_testing, type='response',
predict.all=TRUE, norm.votes=TRUE)
私が今までしてきたことは正しいですか?作成される bankrf.pred オブジェクトは、集合体と個人という名前の 2 つのクラスを持つリスト オブジェクトです。この2つのクラス名がどこから出てきたのかわかりませんか? さらに、実行すると:
summary(bankrf.pred)
Length Class Mode
aggregate 22606 factor numeric
individual 45212 -none- character
このまとめはどういう意味ですか?データセット (トレーニングとテスト) の長さはそれぞれ 22605 と 22606 です。誰かが私に何が起こっているのか説明できれば、私はとても感謝しています. これには何か問題があると思います。
ROCR で ROC 曲線を設計しようとすると、次のコードを使用します。
library(ROCR)
pred <- prediction(bank_testing$y_n, bankrf.pred$c(0,1))
Error in is.data.frame(labels) : attempt to apply non-function
ROC曲線を作成しようとする方法が間違っているだけですか、それともrandomForestで最初からですか?