我正在查看具有一個連續獨立變量(Quant)和一個二進制因變量(二進制)的數據集。我用一個多項式模型來預測連續自變量的二進制值。我希望能製作ROC曲線。這是下面的代碼:R中的ROCR預測函數返回錯誤消息
mymodel <- multinom(Quant~., data = dataset)
pred <- predict(mymodel,dataset)
roc_pred <- prediction(pred,dataset$Binary)
roc <- performance(roc_pred,"tpr","fpr")
現在,如果我運行此代碼,我收到以下錯誤信息:「預測的格式是無效的。」我不確定爲什麼我的預測對象不能滿足預測函數的要求?這將工作的唯一方法是,如果我把以下代碼行,而不是: pred <- predict(mymodel,dataset,type="prob")
但是,這是讓我在pred矩陣一些奇怪的值。由於我的因變量是二進制的,我期望在pred變量中得到0或1的值(這是我用原始代碼行得到的),但是當我添加type =「prob」時,它給出對於自變量(Quant)等於0的所有觀測值,我是0.3的值。什麼是type =「prob」的改變,爲什麼我不能使用原始代碼行來獲得我的ROC曲線? 謝謝。
如果您提供樣本輸入數據的[可重現示例](https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example),則更容易提供幫助,所以我們可以運行並測試你的代碼。 – MrFlick
想通了!原因是由於Excel導入的某些錯誤,我的因變量未被歸類爲數值變量。問題不是預測函數......它實際上是回到多項式模型 – Byakko