Tôi muốn sử dụng lme4để phù hợp với hồi quy hiệu ứng hỗn hợp và multcompđể tính toán các so sánh cặp. Tôi có một bộ dữ liệu phức tạp với nhiều yếu tố dự đoán liên tục và phân loại, nhưng câu hỏi của tôi có thể được chứng minh bằng cách sử dụng bộ ChickWeightdữ liệu tích hợp làm ví dụ:
m <- lmer(weight ~ Time * Diet + (1 | Chick), data=ChickWeight, REML=F)
Timelà liên tục và Dietđược phân loại (4 cấp độ) và có nhiều Chicks cho mỗi chế độ ăn kiêng. Tất cả các con gà con bắt đầu có cùng trọng lượng, nhưng chế độ ăn uống của chúng (có thể) ảnh hưởng đến tốc độ tăng trưởng của chúng, vì vậy các Dietlần chặn phải (ít nhiều) giống nhau, nhưng độ dốc có thể khác nhau. Tôi có thể có được các so sánh theo cặp cho hiệu ứng đánh chặn Dietnhư thế này:
summary(glht(m, linfct=mcp(Diet = "Tukey")))
và, thực sự, chúng không khác biệt đáng kể, nhưng làm thế nào tôi có thể thực hiện thử nghiệm tương tự cho Time:Diethiệu ứng? Chỉ cần đặt thuật ngữ tương tác sẽ mcptạo ra lỗi:
summary(glht(m, linfct=mcp('Time:Diet' = "Tukey")))
Error in summary(glht(m, linfct = mcp(`Time:Diet` = "Tukey"))) :
error in evaluating the argument 'object' in selecting a method for function
'summary': Error in mcp2matrix(model, linfct = linfct) :
Variable(s) ‘Time:Diet’ have been specified in ‘linfct’ but cannot be found in ‘model’!
Time*Diet, đó chỉ là một sự đơn giản hóaTime + Diet + Time:Diet. Sử dụnganova(m)hoặcsummary(m)xác nhận rằng thuật ngữ tương tác có trong mô hình.