Pour autant que je sache, la différence entre le modèle logistique et le modèle de réponse fractionnaire (frm) est que la variable dépendante (Y) dans laquelle frm est [0,1], mais la logistique est {0, 1}. De plus, frm utilise l'estimateur de quasi-vraisemblance pour déterminer ses paramètres.
Normalement, nous pouvons utiliser glm
pour obtenir les modèles logistiques par glm(y ~ x1+x2, data = dat, family = binomial(logit))
.
Pour frm, nous passons family = binomial(logit)
à family = quasibinomial(logit)
.
J'ai remarqué que nous pouvons également utiliser family = binomial(logit)
pour obtenir le paramètre de frm car il donne les mêmes valeurs estimées. Voir l'exemple suivant
library(foreign)
mydata <- read.dta("k401.dta")
glm.bin <- glm(prate ~ mrate + age + sole + totemp, data = mydata
,family = binomial('logit'))
summary(glm.bin)
revenir,
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
Et pour family = quasibinomial('logit')
,
glm.quasi <- glm(prate ~ mrate + age + sole + totemp, data = mydata
,family = quasibinomial('logit'))
summary(glm.quasi)
revenir,
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
Les Beta estimés des deux family
sont les mêmes, mais la différence réside dans les valeurs SE. Cependant, pour obtenir la SE correcte, nous devons utiliser library(sandwich)
comme dans ce post .
Maintenant, mes questions:
- Quelle est la différence entre ces deux codes?
- Frm est-il sur le point d'obtenir une SE robuste?
Si ma compréhension n'est pas correcte, veuillez donner quelques suggestions.