2

こんにちは、R ライブラリを使用しています

library(pROC)
library(ff)
library(ffbase)
library(biglm)

次のコードは、ffdf の大きなデータ フレームを使用してロジスティック回帰モデルを生成し、ROC 曲線の下の領域を計算します。

mymodel <- bigglm(outcome~x1+x2+x3,family=binomial("logit"),data=myffdf,maxit=20)
summary(mymodel)
pred <- predict(mymodel,myffdf,type="response")
rocobj <- roc(myffdf$outcome, pred)

次のエラーが表示されます。

Error in opsff_compare_logic(x, y, "|") : 
operator requires length 1 for e2, recycling not possible

AUCの取得方法についてアドバイスをいただきありがとうございます。

4

2 に答える 2

2

これはうまくいきます:

roc(myffdf$outcome[], pred)

角かっこに注意してください。

user20650 と JVL に感謝

于 2014-06-11T07:36:47.137 に答える
1

この関数は、次の行で、または次の行を使用してpROC::rocNA をチェックしようとします。myffdf$outcomepred

nas <- is.na(response) | is.na(predictor)

しかし、一見すると、オブジェクトは別のオブジェクトまたは長さ 1 のベクトルとしか比較できないことがffbase::opsff_compare_logicわかります。そのため、エラーが発生するのは、 が であるが、そうではなく、長さが 1 より大きいためです。ff_vectorff_vectormyffdf$outcomeff_vectorpred

可能な解決策は、電話することです

rocobj <- roc(myffdf$outcome, as.ff(pred))

代わりは。

于 2014-06-09T20:08:54.760 に答える