utilisation des poids dans svyglm vs glm


18

Je voudrais savoir en quoi le traitement des poids diffère entre svyglmetglm

J'utilise le twangpackage dans R pour créer des scores de propension qui sont ensuite utilisés comme poids, comme suit (ce code provient de la twangdocumentation):

library(twang)
library(survey)
set.seed(1)

data(lalonde)

ps.lalonde <- ps(treat ~ age + educ + black + hispan + nodegree + married + re74 + re75,
 data = lalonde)

lalonde$w <- get.weights(ps.lalonde, stop.method="es.mean")
design.ps <- svydesign(ids=~1, weights=~w, data=lalonde)

glm1 <- svyglm(re78 ~ treat, design=design.ps)

summary(glm1)

...
Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   6685.2      374.4  17.853   <2e-16 ***
treat         -432.4      753.0  -0.574    0.566    

Comparez cela à:

glm11 <- glm(re78 ~ treat, weights=w , data=lalonde)
summary(glm11)

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   6685.2      362.5  18.441   <2e-16 ***
treat         -432.4      586.1  -0.738    0.461  

Les estimations des paramètres sont donc les mêmes, mais les erreurs standard pour le traitement sont assez différentes.

En quoi le traitement des poids diffère-t-il entre svyglmet glm?

Réponses:


11

Il existe de nombreux types de poids différents et ils deviennent un peu déroutants. Vous devez être très prudent lorsque vous utilisez différentes fonctions ou logiciels que vous utilisez le type de poids que vous pensez utiliser.

La fonction svyglm utilise des poids d'enquête - ceux-ci pondèrent l'importance de chaque cas pour les rendre représentatifs (les uns aux autres, après le twang). Je ne sais pas exactement quel poids fait glm () - je pense qu'ils représentent la précision des mesures. (Si vous utilisez la famille binomiale, leur signification est différente).

Les poids de sondage (dans surveyglm) sont les poids que vous voulez, pour vous donner les erreurs standard correctes.

(Il existe également des pondérations de fréquence, des pondérations analytiques et des pondérations d'importance).


(+1) merci. connaissez-vous une référence accessible pour les poids d'enquête, autre que les documents pour surveyglm)?
Joe King le


1
Merci pour la référence., Par accessible, je voulais dire quelque chose de disponible en ligne, désolé. Je n'ai pas facilement accès à de bonnes bibliothèques ....
Joe King

Hmmm ... Je ne me souviens pas avoir rencontré quoi que ce soit, mais je vais voir ce que je peux trouver.
Jeremy Miles

9

surveycalcule les erreurs standard en tenant compte de la perte de précision introduite par les poids d'échantillonnage. Les poids en glmajustent simplement le poids donné aux erreurs dans l'estimation des moindres carrés, de sorte que les erreurs standard ne sont pas correctes. Voici une sélection de Lumley (2010):

Dans une analyse basée sur un modèle, il serait nécessaire de spécifier correctement la partie aléatoire du modèle pour obtenir les erreurs standard correctes, mais toutes nos estimations d'erreur standard sont basées sur le plan et sont donc valides quel que soit le modèle. Il convient de noter que les erreurs standard «sandwich», «robustes au modèle» ou «cohérentes à l'hétéroscédasticité» parfois utilisées dans l'analyse de régression basée sur le modèle sont presque identiques aux erreurs standard basées sur le plan que nous utiliserons; la principale différence réside dans le traitement de la stratification.

Donc, sans strates dans votre conception, vous constaterez probablement que l'utilisation sandwichvous donnera des estimations SE identiques ou presque identiques.

library(sandwich)
coefs <- vcovHC(glm11, type="HC0")
lmtest::coeftest(glm11,coefs)

Dans mon test, ils n'ont pas calculé exactement en utilisant "HC0" ou "HC1", mais étaient très proches. svyglmrapporte désormais également une valeur z au lieu d'une valeur t.


2
Si utile à un lecteur futur: coeftestest du package R lmtest.
swihart
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.