glmを使用してRでロジスティック回帰を実行する際にいくつかの問題があります。バイナリ応答変数をglmに渡してロジスティック回帰を実行するには、2つの方法があります。データをシリアルデータ形式でglmに渡すことができます(例:観測ごとに1行、応答変数は0または1、独立変数にはあなたが持っている値を持ちます)、またはそれを渡すことができます最初の列は試行回数を示し、2番目の列は成功数を示し、3番目の列は独立変数です。ロジスティック回帰を実行するのが困難です。
後者のデータフォーマット(3列のデータフレームなど)を使用してglmを使用すると、予想される出力が得られますが、前者(シリアルデータフォーマット)を使用してデータを入力すると、期待される答え。ここで
は、私はしかし、シリアルデータ
> head(atable)
ordered sale_price
1 0 149.99
2 0 149.99
3 0 149.99
4 0 149.99
5 0 149.99
6 0 149.99
> summary(atable)
ordered sale_price
Min. :0.00000 Min. : 89.99
1st Qu.:0.00000 1st Qu.: 89.99
Median :0.00000 Median : 89.99
Mean :0.07843 Mean :105.87
3rd Qu.:0.00000 3rd Qu.: 99.99
Max. :1.00000 Max. :149.99
> conv_model <- glm(ordered ~ sale_price, family=binomial(link="logit"), data=atable)
> summary(conv_model)
Call:
glm(formula = ordered ~ sale_price, family = binomial(link = "logit"),
data = atable)
Deviance Residuals:
Min 1Q Median 3Q Max
-0.4743 -0.4743 -0.4743 -0.1209 3.1376
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 0.549136 0.095341 5.76 8.43e-09 ***
sale_price -0.019949 0.001002 -19.90 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 11322 on 20591 degrees of freedom
Residual deviance: 10623 on 20590 degrees of freedom
AIC: 10627
Number of Fisher Scoring iterations: 7
で、この場合の期待値を取得し、ちょうどそれが同じデータ
> table(atable$ordered, atable$sale_price)
89.99 99.99 149.99
0 11907 2024 5046
1 1369 215 31
だということを示すために、例
prices <- c(89.99, 99.99, 149.99)
non_purchases <- c(11907, 2024, 5046)
purchases <- c(1369, 215, 31)
trials <- cbind(non_purchases, purchases)
model <- glm(trials ~ prices, family=binomial(link="logit"))
> summary(model)
Call:
glm(formula = trials ~ prices, family = binomial)
Deviance Residuals:
1 2 3
1.332 -4.440 1.553
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.923863 0.241677 -7.96 1.71e-15 ***
prices 0.044995 0.002593 17.35 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 715.832 on 2 degrees of freedom
Residual deviance: 23.897 on 1 degrees of freedom
AIC: 49.228
Number of Fisher Scoring iterations: 4
です
私が得られる出力はまったく異なり、私は完全に混乱しています。誰か助けてくれますか?私は何か簡単なことをしていると仮定します。
Ahh、RFTM!または、この場合、慎重にRFTM。ありがとう、私はあなたの助けに大いに感謝します。 –
あなたは大歓迎です!私に何がわかりましたかは、係数の符号の変更でした。あなたの最初のモデルは正の価格係数を示していました。後ろに見えた。 – Gregor