Nếu những gì bạn hiển thị hoạt động cho một lmer
công thức cho một thuật ngữ hiệu ứng ngẫu nhiên thì bạn sẽ có thể sử dụng các hàm từ gói splines đi kèm với R để thiết lập các hàm cơ sở có liên quan.
require("lme4")
require("splines")
lmer(counts ~ dependent_variable + (bs(t) | ID), family="poisson")
Tùy thuộc vào những gì bạn muốn làm, bạn cũng nên xem gói gamm4 và gói mgcv . Cái trước về cơ bản là chính thức hóa bs()
bit trong lmer()
cuộc gọi ở trên và cho phép lựa chọn độ mịn được thực hiện như một phần của phân tích. Cái sau với chức năng gam()
cho phép một số mức độ linh hoạt trong các mô hình phù hợp như thế này (nếu tôi hiểu những gì bạn đang cố gắng làm). Có vẻ như bạn muốn xu hướng riêng biệt trong ID
? Một cách tiếp cận hiệu ứng cố định hơn sẽ là một cái gì đó như:
gam(counts ~ dependent_variable + ID + s(t, by = ID) , family="poisson")
Hiệu ứng ngẫu nhiên có thể được đưa vào gam()
mô hình bằng cách sử dụng s(foo, bs = "re")
thuật ngữ kiểu nơi foo
sẽ là ID
trong ví dụ của bạn. Cho dù việc kết hợp by
thuật ngữ ý tưởng với một hiệu ứng ngẫu nhiên có hợp lý hay không là điều đáng suy nghĩ và không phải là điều tôi đủ điều kiện để nhận xét.