R 패키지 nlme 및 lme4 에서 여러 랜덤 효과가있는 모델을 지정하려고했습니다. 나는 nlme 만이 분산의 이종 구조를 지정할 수 있음을 발견했습니다 . 따라서 온도 (Y)가 시간 (시간)에 따라 다르며 요일은 날짜와 연도에 따라 다르며 분산도 연도에 따라 다릅니다.
fit1 <- lme(Y ~ time, random=~1|year/date, data=X, weights=varIdent(form=~1|year))
그러나 다른 임의의 용어를 추가 해야하는 경우 (날짜에 따라 시간이 다름) 다음과 같이 모델을 지정하십시오.
fit2 <- lme(Y ~ time, random=list(~1|year, ~time-1|date, ~1|date), data=X,
weights=varIdent(form=~1|year))
무작위 효과는 서로 중첩됩니다 : 연도 별 날짜; 날짜와 연도 날짜입니다.
나는 또한 시도했다
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))
그러나 오류가 발생합니다.
Error in pdConstruct.pdBlocked(object, form = form, nam = nam, data = data, :
cannot have duplicated column names in a "pdMat" object
비슷한 문제와 관련하여 이미 많은 질문이 있었음을 이해하지만 실제로는 내 대답에 대한 답을 찾지 못했습니다. 모델의 올바른 사양을 알려주시겠습니까?