2017-11-14 2 views
1

Ich versuche, angepasste Werte aus einem linearen Modell mit vielen Faktoren zu erhalten, die ich mit der Funktion felm aus dem R-Paket lfe schätzen möchte. Wenn ich nicht falsch interpretiere, was mit der Funktion fitted.values gemeint ist, die von der Funktion zurückgegeben wird, sieht es so aus, als ob diese Werte nicht mit der Ausgabe übereinstimmen, die ich erhalte, wenn ich sie manuell erstelle. Hier ein Beispiel aus der Paketdokumentation:Angepasste Werte in FELM

library(lfe) 
set.seed(42) 
nn = 10 
n1 = 3 

x <- rnorm(nn) 
f1 <- sample(n1, length(x), replace=TRUE) 
y <- 2.13*x + cos(f1) + rnorm(length(x), sd=0.5) 
est <- felm(y ~ x | f1) 
estb <- lm(y~x+factor(f1)-1) 


# we have exactly the same coefficients 
getfe(est)['effect']/estb$coefficients[2:(n1+1)] 
est$coefficients/estb$coefficients[1] 

# but different fitted values -- in fact all having the same group offset 
estb$fitted.values-est$fitted.values 

Was sind diese Offsets? Muss felm eine andere Art von angepassten Wert zurückgeben? Danke für das Suchen

Antwort

0

Es sieht so aus, als ob die angepassten Werte, die von felm ausgespuckt wurden, nur mit den Regressoren im ersten Teil der Felm-Gleichung berechnet werden (mit Ausnahme der festen Effekte). Dies erklärt den gleichen Gruppenoffset, den Sie in Ihren Daten sehen.

Sie können angepasste Werte für das gesamte Modell ableiten, indem Sie die Residuen im felm-Objekt von Ihren beobachteten Werten subtrahieren. Im Gegensatz zu den angepassten Werten werden die Residuen mit dem vollständigen Modell berechnet (siehe Hilfe zur felm-Funktion).