Chciałbym wiedzieć, jak różni się sposób traktowania ciężarów między svyglm
iglm
Używam twang
pakietu w R do tworzenia ocen skłonności, które są następnie używane jako wagi, w następujący sposób (ten kod pochodzi z twang
dokumentacji):
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
Porównaj to z:
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
Oszacowania parametrów są takie same, ale standardowe błędy dla leczenia są zupełnie inne.
Czym różni się sposób traktowania ciężarów między svyglm
i glm
?
surveyglm
)?survey
oblicza standardowe błędy z uwzględnieniem utraty precyzji wprowadzonej przez próbki wag. Wagiglm
po prostu dostosowują wagę przypisaną do błędów w oszacowaniu metodą najmniejszych kwadratów, więc standardowe błędy są nieprawidłowe. Oto wybór z Lumley (2010):Więc bez warstw w twoim projekcie prawdopodobnie przekonasz się, że użycie
sandwich
da ci identyczne lub prawie identyczne oszacowania SE.W moim teście nie obliczyły dokładnie, kiedy używano „HC0” lub „HC1”, ale były bardzo zbliżone.
svyglm
zgłasza teraz także wartość Z zamiast wartości T.źródło
coeftest
jest z pakietem Rlmtest
.