ロジスティック回帰 (1)の続きです。例題はロジスティック回帰 (1)と同じですが、データセットの構造が異なります。例題の内容や結果については色々とご意見があると思いますが、統計学の練習のためのサンプルですのでご了承ください。
例題 リハビリを受けている入院中の患者に対してリハビリに関する満足度調査を実施した。1週間に割り当てられた単位数をもとにランダムにインタビューした。「満足」と回答する割合と1週間のリハビリ単位数には関係があるのでしょうか?
データの準備と要約
データセット log01 と log02 をダウンロードします(ファイルの読み込み方)
R
dat1 <- read.csv("log01.csv", header=T, fileEncoding = "UTF-8")
R
dat2 <- read.csv("log02.csv", header=T, fileEncoding = "UTF-8")
dat1の確認
R
dat1
単位数=1週間のリハ単位数
患者数=各単位数に該当する患者数
満足=「満足」と回答した患者数
dat2の確認
R
dim(dat2)
100行あるので20行のみを表示してみます
R
#20行のみ表示
dat2[0:20,]
ロジスティック回帰
それぞれのセットでロジスティック回帰を実行してみます
目的変数の設定が異なるので注意してください
fit1: dat1 を使用したロジスティック回帰
R
fit1 <- glm(
cbind(満足, 患者数-満足) ~ 単位数,
family=binomial,
data=dat1
)
summary(fit1)
fit2: dat2 を使用したロジスティック回帰
R
fit2 <- glm(
cbind(満足, 1-満足) ~ 単位数,
family=binomial,
data=dat2
)
summary(fit2)
fit1とfit2で異なる部分はdevianeceの部分です
逸脱度(deviance) = -2 × 対数尤度
以下はRの出力のまとめです(Rは尤度比検定に必要なNull deviance、Residual devianceを出力します)
Null deviance:切片モデルのdevianceから尤も当てはまりのよいモデル(Full model)のdevianceを引いた値
Residual deviance:回帰モデルのdevianceから尤も当てはまりのよいモデル(Full model)のdevianceを引いた値
fit1 | fit2 | |
Null deviance | 43.6268 | 138.59 |
Null devianceの自由度 | 8 | 99 |
Residual deviance | 6.3246 | 101.29 |
Residual devianceの自由度 | 7 | 98 |
AIC | 30.394 | 105.29 |
この違いから、fit1とfit2では対数尤度が異なることが理解できます
コメント欄 『間違い』や『分かりにくい部分』などのご意見もお寄せください