Pracoval jsem v balíčcích R nlme a lme4 a snažil jsem se určit modely s více náhodnými efekty. Zjistil jsem, že pouze nlme umožňuje určit heterogenní strukturu rozptylu. Proto jsem dostal model, kde teplota (Y) závisí na čase (v hodinách), zachycení se liší podle data a roku a odchylka se také liší podle roku:
fit1 <lme (Y ~ time, random = ~ 1 | year / date, data = X, weights = varIdent (form = ~ 1 | year))
Nicméně, pokud potřebuji přidat další náhodný termín ( čas se liší podle data) a zadejte model takto:
fit2 <lme (Y ~ time, random = list (~ 1 | year, ~ time-1 | date, ~ 1 | date), data = X, weights = varIdent (form = ~ 1 | year))
náhodné efekty se navzájem vnořují: datum v roce; a potom datum v datu a v roce.
Zkoušel jsem také
jeden <- rep (1, délka (Y)) fit3 <lme (Y ~ čas, random = list (one = pdBlocked (list (pdSymm (~ 1 | year / date), pdSymm (~ time-1 | year)))), data = X, weights = varIdent (form = ~ 1 | year))
ale dává chybu:
Chyba v pdConstruct.pdBlocked (object, form = form, nam = nam, data = data,: nelze duplikovat názvy sloupců v objektu „pdMat“
Chápu, že již existuje mnoho otázek souvisejících s podobným problémem, ale opravdu jsem nenašel odpověď na můj případ. Mohl byste mi pomoci se správnou specifikací modelu?