Bảng cheat lmer của R


160

Có rất nhiều cuộc thảo luận đang diễn ra trên diễn đàn này về cách thức phù hợp để xác định các mô hình phân cấp khác nhau bằng cách sử dụng lmer.

Tôi nghĩ sẽ thật tuyệt khi có tất cả thông tin ở một nơi. Một vài câu hỏi để bắt đầu:

  1. Làm thế nào để xác định nhiều cấp độ, trong đó một nhóm được lồng trong nhóm khác: đó là (1|group1:group2)hay (1+group1|group2)?
  2. Sự khác biệt giữa những gì (~1 + ....)(1 | ...)(0 | ...)vv?
  3. Làm thế nào để xác định các tương tác cấp nhóm?

11
Các nhãn hiệu và ba họa tiết cho các lme4gói có thể được tìm thấy trên Cran
Henry

4
Ngoài các tài liệu CRAN, các slide bài giảng cộng với các chương nháp của một cuốn sách Doug đang viết trên (G) LMM và R với lme4 có sẵn từ r-forge
Gavin Simpson

Liên kết trực tiếp đến phiên bản arXiv của bài báo JSS của Bates và cộng sự: Mô hình hiệu ứng hỗn hợp tuyến tính phù hợp bằng cách sử dụng lme4 (đặc biệt là Phần 2.2 "Tìm hiểu các công thức mô hình hỗn hợp"). Xem thêm phần có liên quan của Câu hỏi thường gặp của Ben Bolker's.
amip

5
Có thể cho rằng, ngôn ngữ được sử dụng lmerlà mối quan tâm thống kê chung và do đó không chỉ là vấn đề lập trình. Do đó tôi đang bỏ phiếu để giữ cho chủ đề này mở.
whuber

2
@whuber +1 Hoàn toàn đồng ý.
amip

Câu trả lời:


180

Sự khác biệt giữa (~ 1 + ....) và (1 | ...) và (0 | ...), v.v.?

Giả sử bạn có biến V1 được dự đoán bởi biến phân loại V2, được coi là hiệu ứng ngẫu nhiên và biến V3 liên tục, được coi là hiệu ứng cố định tuyến tính. Sử dụng cú pháp lmer, mô hình đơn giản nhất (M1) là:

V1 ~ (1|V2) + V3

Mô hình này sẽ ước tính:

P1: Đánh chặn toàn cầu

P2: Chặn hiệu ứng ngẫu nhiên cho V2 (tức là đối với mỗi cấp V2, độ lệch của mức chặn đó so với chặn toàn cầu)

P3: Ước tính toàn cầu duy nhất cho hiệu ứng (độ dốc) của V3

Mô hình phức tạp nhất tiếp theo (M2) là:

V1 ~ (1|V2) + V3 + (0+V3|V2)

Mô hình này ước tính tất cả các tham số từ M1, nhưng sẽ ước tính thêm:

P4: Hiệu ứng của V3 trong mỗi cấp V2 (cụ thể hơn là mức độ mà hiệu ứng V3 trong một mức nhất định làm lệch khỏi hiệu ứng toàn cầu của V3), trong khi thực thi một mối tương quan bằng không giữa độ lệch chặn và độ lệch hiệu ứng V3 giữa các cấp của V2 .

Hạn chế sau này được nới lỏng trong một mô hình phức tạp nhất cuối cùng (M3):

V1 ~ (1+V3|V2) + V3

Trong đó tất cả các tham số từ M2 được ước tính trong khi cho phép tương quan giữa độ lệch chặn và độ lệch hiệu ứng V3 trong các mức của V2. Do đó, trong M3, một tham số bổ sung được ước tính:

P5: Mối tương quan giữa độ lệch đánh chặn và độ lệch V3 giữa các cấp V2

Thông thường các cặp mô hình như M2 và M3 được tính toán sau đó để so sánh để đánh giá bằng chứng về mối tương quan giữa các hiệu ứng cố định (bao gồm cả đánh chặn toàn cầu).

Bây giờ hãy xem xét thêm một yếu tố dự đoán hiệu ứng cố định khác, V4. Ngươi mâu:

V1 ~ (1+V3*V4|V2) + V3*V4

sẽ ước tính:

P1: Đánh chặn toàn cầu

P2: Một ước tính toàn cầu duy nhất cho tác động của V3

P3: Một ước tính toàn cầu duy nhất cho tác động của V4

P4: Ước tính toàn cầu duy nhất cho sự tương tác giữa V3 và V4

P5: Độ lệch của phần chặn từ P1 ở mỗi cấp V2

P6: Độ lệch của hiệu ứng V3 so với P2 ở mỗi cấp V2

P7: Độ lệch của hiệu ứng V4 so với P3 ở mỗi cấp V2

P8: Độ lệch của tương tác V3-by-V4 so với P4 ở mỗi cấp V2

P9 Tương quan giữa P5P6 giữa các cấp V2

P10 Tương quan giữa P5P7 giữa các cấp V2

P11 Tương quan giữa P5P8 giữa các cấp V2

P12 Tương quan giữa P6P7 giữa các cấp V2

P13 Tương quan giữa P6P8 giữa các cấp V2

P14 Tương quan giữa P7P8 giữa các cấp V2

Phew , đó là rất nhiều thông số! Và tôi thậm chí không buồn liệt kê các tham số phương sai được ước tính bởi mô hình. Hơn nữa, nếu bạn có một biến phân loại có nhiều hơn 2 cấp độ mà bạn muốn mô hình hóa thành hiệu ứng cố định, thay vì một hiệu ứng duy nhất cho biến đó, bạn sẽ luôn ước tính hiệu ứng k-1 (trong đó k là số cấp) , do đó làm bùng nổ số lượng tham số được ước tính bởi mô hình hơn nữa.


1
@Mike Lawrence Cảm ơn câu trả lời! Làm thế nào là một mô hình 3 cấp ước tính sau đó? trong đó một yếu tố nhóm được lồng trong một yếu tố khác?

DBR, tôi không nghĩ bạn biết cấp độ nào. Bạn đã hỏi về điều này mãi mãi. Tạo một câu hỏi thực sự chi tiết về thiết kế thử nghiệm của bạn và thể hiện sự giải thích của bạn về "cấp độ".
Giăng

3
Tôi nghĩ DBR đang đề cập đến các cấp độ trong hệ thống phân cấp. Những gì tôi mô tả là mô hình phân cấp 2 cấp, với các quan sát được lồng trong các môn học và DBR đang hỏi về phân cấp 3 cấp, một ví dụ có thể là các mục kiểm tra trong học sinh trong trường mà bạn muốn mô hình hóa cả học sinh và trường là ngẫu nhiên hiệu ứng, với các sinh viên lồng trong trường học. Trong những trường hợp như vậy, tôi cho rằng độ lệch cấp trường trước tiên được tính toán sau đó là độ lệch giữa học sinh và trường.
Mike Lawrence

2
Câu trả lời hay nhất tôi từng thấy để thiết lập mô hình. Giúp tôi cung cấp một khuôn khổ dễ dàng cho sếp của tôi để hiểu những gì tôi đang làm trong R với lmer.
bfoste01

YTôij= =γ00+γ10XTôij+γ01Zj+γ11XTôijZj+bạn1jXTôij+bạn0j+eTôij
TôiTôijjlmerY~X+Z+(1|group)+(0+X|Z)group

50

Thủ thuật chung là, như đã đề cập trong một câu trả lời khác , là công thức tuân theo mẫu dependent ~ independent | grouping. Các groupingthường là một yếu tố ngẫu nhiên, bạn có thể bao gồm các yếu tố cố định mà không cần bất kỳ nhóm và bạn có thể có yếu tố ngẫu nhiên thêm mà không cần bất kỳ yếu tố cố định (một đánh chặn chỉ mô hình). Một +giữa các yếu tố cho thấy không có tương tác, một *chỉ ra tương tác.

Đối với các yếu tố ngẫu nhiên, bạn có ba biến thể cơ bản:

  1. Chỉ chặn theo yếu tố ngẫu nhiên: (1 | random.factor)
  2. Độ dốc chỉ theo yếu tố ngẫu nhiên: (0 + fixed.factor | random.factor)
  3. Chặn và dốc theo yếu tố ngẫu nhiên: (1 + fixed.factor | random.factor)

Lưu ý rằng biến thể 3 có độ dốc và đánh chặn được tính toán trong cùng một nhóm, tức là cùng một lúc. Nếu chúng ta muốn độ dốc và phần chặn được tính toán độc lập, tức là không có bất kỳ mối tương quan giả định nào giữa hai phần, chúng ta cần một biến thể thứ tư:

  • Đánh chặn và độ dốc, riêng biệt, theo yếu tố ngẫu nhiên : (1 | random.factor) + (0 + fixed.factor | random.factor). Một cách khác để viết này là sử dụng ký hiệu hai thanh fixed.factor + (fixed.factor || random.factor).

Ngoài ra còn có một bản tóm tắt hay trong một câu trả lời khác cho câu hỏi này mà bạn nên xem qua.

Nếu bạn muốn đào sâu vào toán học một chút, Barr et al. (2013) tóm tắt lmercú pháp khá độc đáo trong Bảng 1 của chúng, được điều chỉnh ở đây để đáp ứng các ràng buộc của đánh dấu không cần thẻ. Bài báo đó xử lý dữ liệu tâm lý học, vì vậy hai hiệu ứng ngẫu nhiên là SubjectItem.

Mô hình và lme4cú pháp công thức tương đương :

    • YSTôi= =β0+β1XTôi+eSTôi
    • Không áp dụng (Không phải mô hình hiệu ứng hỗn hợp)
    • YSTôi= =β0+S0S+β1XTôi+eSTôi
    • Y ∼ X+(1∣Subject)
    • YSTôi= =β0+S0S+(β1+S1S)XTôi+eSTôi
    • Y ∼ X+(1 + X∣Subject)
    • YSTôi= =β0+S0S+Tôi0Tôi+(β1+S1S)XTôi+eSTôi
    • Y ∼ X+(1 + X∣Subject)+(1∣Item)
    • YSTôi= =β0+S0S+Tôi0Tôi+β1XTôi+eSTôi
    • Y ∼ X+(1∣Subject)+(1∣Item)
    • S0SS1S
    • Y ∼ X+(1∣Subject)+(0 + X∣ Subject)+(1∣Item)
    • YSTôi= =β0+Tôi0Tôi+(β1+S1S)XTôi+eSTôi
    • Y ∼ X+(0 + X∣Subject)+(1∣Item)

Người giới thiệu:

Barr, Dale J, R. Levy, C. Scheepers und HJ Tily (2013). Cấu trúc hiệu ứng ngẫu nhiên để kiểm tra giả thuyết xác nhận: Giữ cho nó tối đa . Tạp chí bộ nhớ và ngôn ngữ, 68: 255 107 278.


4
Đẹp. Nó có thể là thông tin tốt hơn về các yếu tố '/' lồng nhau và ký hiệu hai thanh '||'
skan

1
Còn biểu tượng: thì sao?
Eastafri

1
@eastafri Điều đó có nghĩa là điều tương tự nó xảy ra ở mọi nơi trong R (công thức) - sự tương tác giữa hai biến.
Livius

S0SS1S0S0SS1S

4

Các |biểu tượng chỉ ra một yếu tố nhóm trong các phương pháp hỗn hợp.

Theo Pinheiro & Bates:

... Công thức cũng chỉ định một phản hồi và, khi có sẵn, một hiệp phương trình chính . Nó được đưa ra như

response ~ primary | grouping

trong đó responselà một biểu thức cho phản hồi, primarylà một biểu thức cho hiệp phương trình chính và groupinglà một biểu thức cho hệ số nhóm.

Tùy thuộc vào phương pháp bạn sử dụng để thực hiện phân tích phương thức hỗn hợp R, bạn có thể cần tạo một groupedDatađối tượng để có thể sử dụng nhóm trong phân tích (xem nlmegói để biết chi tiết, lme4dường như không cần điều này). Tôi không thể nói theo cách bạn đã chỉ định các lmertuyên bố mô hình của mình vì tôi không biết dữ liệu của bạn. Tuy nhiên, có nhiều (1|foo)trong dòng mô hình là bất thường từ những gì tôi đã thấy. Bạn đang cố gắng làm mẫu gì?

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.