Ich möchte den Standardfehler einer transformierten Variablen aus meiner linearen Regression berechnen, d. H. Zwei Variablen teilen und den Standardfehler von dieser Variablen erhalten.Standardfehler einer transformierten Variablen in linearer Regression ableiten
Ich benutze die deltamethod
Funktion aus dem msm
Paket, aber nicht erhalten genaue Standardfehler.
Zum Beispiel:
Simulation von Daten:
set.seed(123)
nobs = 1000
data <- data.table(
x1 = rnorm(nobs),
x2 = rnorm(nobs),
x3 = rnorm(nobs),
x4 = rnorm(nobs),
y = rnorm(nobs))
Lineare Regression:
reg2 <- lm(y~x1+x2+x3+x4, data=data)
Holen Sie sich das Koef und vcov (hier muss ich der Missings loszuwerden, da einige Koeffizienten in meinen realen Daten sind NA und ich berechne viele Regressionen in Schleife)
vcov_reg <- vcov(reg2)
coef_reg <- coef(reg2)
coef_reg <- na.omit(coef_reg)
coef_reg <- as.numeric(coef_reg)
Deltamethod, für die die Variable x1 durch x3 geteilt (was bedeutet, ich x2 und x4 gemäß der msm-Paket verwenden, sollten):
deltamethod(~ x2/x4, coef_reg, vcov_reg)
Das gibt mir einen Standardfehler der transformierten Variablen (x1/x3) von 3,21, während alle Standardfehler von dieser Regression ungefähr 0,03 sind.
Irgendeine Idee warum/was ist hier falsch? Andere Vorschläge zur Berechnung sind ebenfalls willkommen.
Und was denkst du soll die Antwort sein? – MrFlick