Dies kann eher ein Fehlerbericht als eine Frage sein, aber: warum explizit das Verwenden des newdata
Arguments zur Vorhersage mit dem gleichen Datensatz wie die Trainingsdaten manchmal andere Vorhersagen als erzeugen das Argument newdata
weglassen und das Trainingsdatenset explizit verwenden?Predicant.glmer auf Trainingssatz unterscheidet sich mit und ohne newdata
library(lme4)
packageVersion("lme4") # 1.1.8
m1 <- glmer(myformula, data=X, family="binomial")
p1 <- predict(m1, type="response")
p2 <- predict(m1, type="response", newdata=X)
all(p1==p2) # FALSE
Dies ist nicht nur ein Rundungsfehler. Ich sehe cor(p1,p2)
Rückkehr 0.8.
Dies scheint bei Modellen mit Gefälle isoliert zu sein. Im folgenden Plot implizit bedeutet predict(..., type="response")
ohne newdata und explizite bedeutet predict(..., type="response", newdata=X)
, wo X ist das gleiche wie Training. Der einzige Unterschied zwischen Modell 1 und den anderen Modellen besteht darin, dass Modell 1 nur (zufällige) Abschnitte enthält und die anderen Modelle zufällige Abschnitte und zufällige Steigungen aufweisen.
installieren wäre es hilfreich, ein [reproduzierbares Beispiel], um (http://stackoverflow.com/questions/5963269/how-to- make-a-great-r-reprovised-example) mit Beispiel-Eingabedaten, so dass wir auch den zu verifizierenden Code ausführen können. Achten Sie darauf, wie Sie die Formel angegeben haben. – MrFlick
@MrFlick; versuche mit 'm1 <- lmer (Reaktion ~ Tage + (Tage || Betreff), Schlafstudie)' – user20650
Hmm, Vorhersagen sind gleichbedeutend mit 'newX' anstelle von' newdata' – user20650