O ile mi wiadomo, różnica między modelem logistycznym a modelem odpowiedzi ułamkowej (frm) polega na tym, że zmienna zależna (Y), w której frm wynosi [0,1], ale logistyka to {0, 1}. Ponadto, frm używa estymatora quasi-prawdopodobieństwa do określenia jego parametrów.
Zwykle możemy użyć glm
do uzyskania modeli logistycznych przez glm(y ~ x1+x2, data = dat, family = binomial(logit))
.
Dla frm zmieniamy family = binomial(logit)
na family = quasibinomial(logit)
.
Zauważyłem, że możemy również użyć family = binomial(logit)
do uzyskania parametru frm, ponieważ daje on te same oszacowane wartości. Zobacz następujący przykład
library(foreign)
mydata <- read.dta("k401.dta")
glm.bin <- glm(prate ~ mrate + age + sole + totemp, data = mydata
,family = binomial('logit'))
summary(glm.bin)
powrót,
Call:
glm(formula = prate ~ mrate + age + sole + totemp, family = binomial("logit"),
data = mydata)
Deviance Residuals:
Min 1Q Median 3Q Max
-3.1214 -0.1979 0.2059 0.4486 0.9146
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 1.074e+00 8.869e-02 12.110 < 2e-16 ***
mrate 5.734e-01 9.011e-02 6.364 1.97e-10 ***
age 3.089e-02 5.832e-03 5.297 1.17e-07 ***
sole 3.636e-01 9.491e-02 3.831 0.000128 ***
totemp -5.780e-06 2.207e-06 -2.619 0.008814 **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 1166.6 on 4733 degrees of freedom
Residual deviance: 1023.7 on 4729 degrees of freedom
AIC: 1997.6
Number of Fisher Scoring iterations: 6
A dla family = quasibinomial('logit')
,
glm.quasi <- glm(prate ~ mrate + age + sole + totemp, data = mydata
,family = quasibinomial('logit'))
summary(glm.quasi)
powrót,
Call:
glm(formula = prate ~ mrate + age + sole + totemp, family = quasibinomial("logit"),
data = mydata)
Deviance Residuals:
Min 1Q Median 3Q Max
-3.1214 -0.1979 0.2059 0.4486 0.9146
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.074e+00 4.788e-02 22.435 < 2e-16 ***
mrate 5.734e-01 4.864e-02 11.789 < 2e-16 ***
age 3.089e-02 3.148e-03 9.814 < 2e-16 ***
sole 3.636e-01 5.123e-02 7.097 1.46e-12 ***
totemp -5.780e-06 1.191e-06 -4.852 1.26e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for quasibinomial family taken to be 0.2913876)
Null deviance: 1166.6 on 4733 degrees of freedom
Residual deviance: 1023.7 on 4729 degrees of freedom
AIC: NA
Number of Fisher Scoring iterations: 6
Oszacowane Beta z obu family
są takie same, ale różnica polega na wartościach SE. Jednak, aby uzyskać poprawną SE, musimy użyć library(sandwich)
jak w tym poście .
Teraz moje pytania:
- Jaka jest różnica między tymi dwoma kodami?
- Czy FRM ma wkrótce uzyskać solidną SE?
Jeśli moje zrozumienie jest nieprawidłowe, proszę podać kilka sugestii.
źródło