Sono interessato a comprendere meglio il metodo delta per l'approssimazione degli errori standard degli effetti marginali medi di un modello di regressione che include un termine di interazione. Ho esaminato le domande correlate sotto il delta-method ma nessuno ha fornito esattamente quello che sto cercando.
Considera i seguenti dati di esempio come esempio motivante:
set.seed(1)
x1 <- rnorm(100)
x2 <- rbinom(100,1,.5)
y <- x1 + x2 + x1*x2 + rnorm(100)
m <- lm(y ~ x1*x2)
Sono interessato agli effetti marginali medi (AME) di x1
e x2
. Per calcolare questi, faccio semplicemente quanto segue:
cf <- summary(m)$coef
me_x1 <- cf['x1',1] + cf['x1:x2',1]*x2 # MEs of x1 given x2
me_x2 <- cf['x2',1] + cf['x1:x2',1]*x1 # MEs of x2 given x1
mean(me_x1) # AME of x1
mean(me_x2) # AME of x2
Ma come posso usare il metodo delta per calcolare gli errori standard di questi AME?
Posso calcolare manualmente la SE per questa particolare interazione:
v <- vcov(m)
sqrt(v['x1','x1'] + (mean(x2)^2)*v['x1:x2','x1:x2'] + 2*mean(x2)*v['x1','x1:x2'])
Ma non capisco come usare il metodo delta.
Idealmente, sto cercando una guida su come pensare (e codificare) il metodo delta per gli AME di qualsiasi modello di regressione arbitraria. Ad esempio, questa domanda fornisce una formula per la SE per un particolare effetto di interazione e questo documento di Matt Golder fornisce formule per una varietà di modelli interattivi, ma voglio capire meglio la procedura generale per il calcolo delle SE di AME piuttosto che la formula per la SE di un particolare AME.