6

Y二分従属変数( )と12個の独立変数(X1to )で構成されるデータセットがX12csvファイルに保存されています。データの最初の5行は次のとおりです。

Y,X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,X11,X12  
0,9,3.86,111,126,14,13,1,7,7,0,M,46-50  
1,7074,3.88,232,4654,143,349,2,27,18,6,M,25-30  
1,5120,27.45,97,2924,298,324,3,56,21,0,M,31-35
1,18656,79.32,408,1648,303,8730,286,294,62,28,M,25-30
0,3869,21.23,260,2164,550,320,3,42,203,3,F,18-24

次のコードを使用して、データからロジスティック回帰モデルを構築しました。

mydata <- read.csv("data.csv")     
mylogit <- glm(Y~X1+X2+X3+X4+X5+X6+X7+X8+X9+X10+X11+X12, data=mydata, 
               family="binomial")  
mysteps <- step(mylogit, Y~X1+X2+X3+X4+X5+X6+X7+X8+X9+X10+X11+X12, data=mydata, 
                family="binomial")

コードを使用して、各データの予測確率を取得できます。

theProbs <- fitted(mysteps)

ここで、データテーブルの最初の20行()を使用して分類テーブルを作成します。このテーブルmydataから、実際にデータと一致する予測確率のパーセンテージを決定できます。Y従属変数( )の場合、0は0.5未満の確率を表し、1は0.5より大きい確率を表すことに注意してください。

私は何時間もかけて分類を作成しようとして成功しませんでした。誰かがこの問題を解決するのを助けることができるコードを提案するならば、私はそれを非常に感謝します。

4

2 に答える 2

9

質問は少し古いですが、誰かがアーカイブを見ているなら、これが役立つかもしれません. これは xtabs で簡単に実行できます

classDF <- data.frame(response = mydata$Y, predicted = round(fitted(mysteps),0))

xtabs(~ predicted + response, data = classDF)

次のようなテーブルが生成されます。

           response
predicted   0   1
        0 339 126
        1 130 394
于 2014-09-02T20:46:50.973 に答える