Chỉ định nhiều hiệu ứng ngẫu nhiên (riêng biệt) trong lme [đã đóng]


25

Tôi đã làm việc trong các gói R nlmelme4 , cố gắng chỉ định các mô hình với nhiều hiệu ứng ngẫu nhiên. Tôi thấy rằng chỉ nlme mới cho phép xác định cấu trúc không đồng nhất của phương sai. Do đó, tôi có một mô hình, trong đó nhiệt độ (Y) phụ thuộc vào thời gian (tính theo giờ), việc chặn thay đổi theo ngày và năm và phương sai cũng thay đổi theo năm:

fit1 <- lme(Y ~ time, random=~1|year/date, data=X, weights=varIdent(form=~1|year))

Tuy nhiên, nếu tôi cần thêm một thuật ngữ ngẫu nhiên khác (thời gian thay đổi theo ngày) và chỉ định mô hình như thế này:

fit2 <- lme(Y ~ time, random=list(~1|year, ~time-1|date,  ~1|date), data=X, 
            weights=varIdent(form=~1|year))

các hiệu ứng ngẫu nhiên trở nên lồng vào nhau: ngày trong năm; và sau đó ngày trong ngày và trong năm.

Tôi cũng đã thử

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))

nhưng nó báo lỗi:

Error in pdConstruct.pdBlocked(object, form = form, nam = nam, data = data,  :
  cannot have duplicated column names in a "pdMat" object

Tôi hiểu rằng đã có nhiều câu hỏi liên quan đến vấn đề tương tự, nhưng tôi thực sự không tìm thấy câu trả lời cho trường hợp của mình. Bạn có thể giúp tôi với các đặc điểm kỹ thuật đúng của mô hình?

Câu trả lời:


30

Sau nhiều cuộc đấu tranh, tôi đã tìm ra giải pháp cho vấn đề của mình, mà tôi sẽ đăng ở đây trong trường hợp ai đó sẽ có câu hỏi tương tự:

fit <- lme(Y ~ time, random=list(year=~1, date=~time), data=X, weights=varIdent(form=~1|year))
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.