Ich arbeitete in R-Paketen nlme und lme4 und versuchte, die Modelle mit mehreren zufälligen Effekten zu spezifizieren. Ich fand heraus, dass nur mit nlme die heterogene Struktur der Varianz spezifiziert werden kann. Deshalb habe ich ein Modell bekommen, bei dem die Temperatur (Y) von der Zeit (in Stunden) abhängt, der Achsenabschnitt nach Datum und Jahr variiert und die Abweichung auch nach Jahr variiert:
fit1 <- lme(Y ~ time, random=~1|year/date, data=X, weights=varIdent(form=~1|year))
Wenn ich jedoch einen anderen zufälligen Begriff hinzufügen muss (Zeit variiert je nach Datum) und das Modell wie folgt angeben:
fit2 <- lme(Y ~ time, random=list(~1|year, ~time-1|date, ~1|date), data=X,
weights=varIdent(form=~1|year))
die zufälligen Effekte sind ineinander verschachtelt: Datum im Jahr; und dann Datum in Datum und in Jahr.
Ich habe es auch versucht
one <- rep(1, length(Y))
fit3 <- lme(Y ~ time, random=list(one=pdBlocked(list(pdSymm(~1|year/date),
pdSymm(~time-1|year)))), data=X, weights=varIdent(form=~1|year))
aber es gibt einen Fehler:
Error in pdConstruct.pdBlocked(object, form = form, nam = nam, data = data, :
cannot have duplicated column names in a "pdMat" object
Ich verstehe, dass es bereits viele Fragen im Zusammenhang mit dem ähnlichen Problem gab, aber ich habe wirklich keine Antwort für meinen Fall gefunden. Könnten Sie mir mit der richtigen Spezifikation des Modells helfen?
quelle