Ich bin daran interessiert, die Delta-Methode zur Approximation der Standardfehler der durchschnittlichen Randeffekte eines Regressionsmodells, das einen Interaktionsterm enthält, besser zu verstehen. Ich habe verwandte Fragen unter Delta-Methode betrachtet, aber keine hat genau das geliefert, wonach ich suche.
Betrachten Sie die folgenden Beispieldaten als motivierendes Beispiel:
set.seed(1)
x1 <- rnorm(100)
x2 <- rbinom(100,1,.5)
y <- x1 + x2 + x1*x2 + rnorm(100)
m <- lm(y ~ x1*x2)
Ich interessiere mich für die durchschnittlichen Randeffekte (AMEs) von x1
und x2
. Um diese zu berechnen, mache ich einfach Folgendes:
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
Aber wie berechne ich mit der Delta-Methode die Standardfehler dieser AMEs?
Ich kann die SE für diese bestimmte Interaktion von Hand berechnen:
v <- vcov(m)
sqrt(v['x1','x1'] + (mean(x2)^2)*v['x1:x2','x1:x2'] + 2*mean(x2)*v['x1','x1:x2'])
Aber ich verstehe nicht, wie man die Delta-Methode benutzt.
Im Idealfall bin ich auf der Suche nach einer Anleitung zum Überlegen (und Codieren) der Delta-Methode für AMEs eines beliebigen Regressionsmodells. Zum Beispiel enthält diese Frage eine Formel für die SE für einen bestimmten Interaktionseffekt und dieses Dokument von Matt Golder enthält Formeln für eine Vielzahl interaktiver Modelle, aber ich möchte das allgemeine Verfahren zur Berechnung der SEs von AMEs besser verstehen als die Formel für die SE eines bestimmten AME.
Antworten:
Die Delta-Methode besagt einfach, dass wenn Sie eine Hilfsvariable darstellen können, die Sie als Funktion normalverteilter Zufallsvariablen darstellen können, diese Hilfsvariable ungefähr normalverteilt ist, wobei die Varianz dem Ausmaß der Abweichung der Hilfsvariablen gegenüber den Normalvariablen entspricht (EDIT: Wie von Alecos Papadopoulos ausgeführt, kann die Delta-Methode allgemeiner formuliert werden, so dass keine asymptotische Normalität erforderlich ist. Am einfachsten kann man sich dies als Taylor-Erweiterung vorstellen, bei der der erste Term einer Funktion der Mittelwert ist und die Varianz von den Termen zweiter Ordnung herrührt. Insbesondere wenn eine Funktion des Parameters β ist und b ein konsistenter, normalverteilter Schätzer für diesen Parameter ist: g (G β b
Da β eine Konstante und b ein konsistenter Schätzer für β ist , können wir dann sagen:
√
R
numDeriv
ADDENDUM: In diesem speziellen Fall wäre der
R
Code:quelle
mean(x2)
bei der Berechnung der SE. Wäre das nicht nur für den Randeffekt im Mittel? Meiner Intuition nach müsste ich für AMEs für jede Beobachtung eine SE erstellen und dann in irgendeiner Weise über sie hinweg mitteln.g
den Durchschnitt der Randeffekte für jedes Individuum definieren und wahrscheinlich den numerischen Gradienten verwenden. Ich bin mir nicht sicher, ob die SE für jedes Individuum ziemlich gleich wäre.