Ich versuche, angepasste Werte über Daten zu prognostizieren, die NA
s enthalten und auf einem Modell basieren, das von plm
generiert wird. Hier ist ein Beispielcode:Wie geht man mit NA in einer Panel-Daten-Regression um?
require(plm)
test.data <- data.frame(id=c(1,1,2,2,3), time=c(1,2,1,2,1),
y=c(1,3,5,10,8), x=c(1, NA, 3,4,5))
model <- plm(y ~ x, data=test.data, index=c("id", "time"),
model="pooling", na.action=na.exclude)
yhat <- predict(model, test.data, na.action=na.pass)
test.data$yhat <- yhat
Als ich die letzte Zeile laufen bekomme ich eine Fehlermeldung, dass der Ersatz hat vier Reihen, während die Daten 5 Zeilen.
Ich habe keine Ahnung, wie 5 ... einen Vektor der Länge
zu bekommen vorhersagen zurückkehren Wenn stattdessen ein plm
läuft ich ein lm
laufen (wie in der Zeile darunter) bekomme ich das erwartete Ergebnis.
model <- lm(y ~ x, data=test.data, na.action=na.exclude)