Ich möchte lineares gemischtes Modell verwenden und Vorhersagen auf Populationsebene treffen (d. H. Nur feste Effekte verwenden und 0 anstelle von zufälligen Effekten verwenden).lmer: Vorhersagen auf Populationsebene lösen einen Fehler aus
Beispiel Modelle:
require(lme4)
fm1 <- lmer(Reaction ~ Days + (Days | Subject), sleepstudy)
summary(fm1)
# values for prediction:
newx <- seq(min(sleepstudy$Days), max(sleepstudy$Days))
habe ich versucht, verschiedene Methoden der Vorhersage auf Bevölkerungsebene, aber sie alle sind gescheitert:
pred <- predict(fm1, newdata = data.frame(Days = newx), allow.new.levels = TRUE)
# Error: couldn't evaluate grouping factor Subject within model frame: try adding grouping factor to data frame explicitly if possible
pred <- predict(fm1, newdata = data.frame(Days = newx, Subject = NA), allow.new.levels = TRUE)
# Error: Invalid grouping factor specification, Subject
pred <- predict(fm1, newdata = data.frame(Days = newx, Subject = as.factor(NA)), allow.new.levels = TRUE)
# Error: Invalid grouping factor specification, Subject
Ich habe versucht, das Handbuch für die richtige Vorhersage-Methode zu finden, aber ich Weiß nicht wie? Ich habe versucht, help(package = "lme4")
zu betrachten und die nächste Funktion, die ich fand, war predict.merMod
(obwohl die Klasse des Modells fm1
ist lmerMod
nicht merMod
). ?predict.merMod
lautet:
allow.new.levels (logische) wenn FALSE (Standard), wird jedes neue Ebenen (oder NA-Werte) in newdata detektiert einen Fehler auslösen; wenn TRUE, dann wird die Vorhersage verwenden, um die bedingungslosen (Bevölkerungsebene) Werte für Daten mit zuvor nicht beobachteten Niveaus (oder NAs)
Er sagt ausdrücklich „oder NAs“, aber es funktioniert anscheinend nicht funktioniert dieser Weg!!
- Betrachte ich die Hilfeseite einer geeigneten Methode? Wenn nicht, was ist die richtige Methode?
- Wie funktioniert die Vorhersage auf der Populationsebene?
Danke Ben! Es ist wahrscheinlich die Formulierung in der Hilfe, die mich verwirrte: "... um zu konditionieren.". Ich bin kein Muttersprachler, bitte, was das bedeutet? Wahrscheinlich ist das nur eine englische Formulierung einer bestimmten Situation mit den zufälligen Effekten? Oder ist es in Imer oder der Statistik selbst ein "Condition" -Konzept? Ich hatte keine Ahnung, was das bedeutet, also habe ich es wahrscheinlich übersehen. – TMS
es ist statistische Terminologie (Jargon): "Konditionierung auf" bedeutet, seinen Wert bei der Vorhersage zu berücksichtigen. –
Aha, großer Ben, danke für Erklärung! :-) – TMS