Phương pháp so sánh nào được sử dụng cho mô hình lmer: lsmeans hoặc glht?


15

Tôi đang phân tích một tập dữ liệu bằng mô hình hiệu ứng hỗn hợp với một hiệu ứng cố định (điều kiện) và hai hiệu ứng ngẫu nhiên (người tham gia do thiết kế chủ đề và cặp bên trong). Mô hình được tạo ra với lme4gói : exp.model<-lmer(outcome~condition+(1|participant)+(1|pair),data=exp).

Tiếp theo, tôi đã thực hiện một thử nghiệm tỷ lệ khả năng của mô hình này so với mô hình mà không có hiệu ứng (điều kiện) cố định và có sự khác biệt đáng kể. Có 3 điều kiện trong tập dữ liệu của tôi vì vậy tôi muốn thực hiện so sánh nhiều nhưng tôi không chắc nên sử dụng phương pháp nào . Tôi đã tìm thấy một số câu hỏi tương tự trên CrossValidated và các diễn đàn khác nhưng tôi vẫn còn khá bối rối.

Từ những gì tôi thấy, mọi người đã gợi ý sử dụng

1. Các lsmeansgói - lsmeans(exp.model,pairwise~condition)mang đến cho tôi những kết quả sau đây:

condition     lsmean         SE    df  lower.CL  upper.CL
 Condition1 0.6538060 0.03272705 47.98 0.5880030 0.7196089
 Condition2 0.7027413 0.03272705 47.98 0.6369384 0.7685443
 Condition3 0.7580522 0.03272705 47.98 0.6922493 0.8238552

Confidence level used: 0.95 

$contrasts
 contrast                   estimate         SE    df t.ratio p.value
 Condition1 - Condition2 -0.04893538 0.03813262 62.07  -1.283  0.4099
 Condition1 - Condition3 -0.10424628 0.03813262 62.07  -2.734  0.0219
 Condition2 - Condition3 -0.05531090 0.03813262 62.07  -1.450  0.3217

P value adjustment: tukey method for comparing a family of 3 estimates 

2. Các multcompgói theo hai cách khác nhau - sử dụng mcp glht(exp.model,mcp(condition="Tukey"))kết quả

     Simultaneous Tests for General Linear Hypotheses

Multiple Comparisons of Means: Tukey Contrasts


Fit: lmer(formula = outcome ~ condition + (1 | participant) + (1 | pair), 
    data = exp, REML = FALSE)

Linear Hypotheses:
                             Estimate Std. Error z value Pr(>|z|)  
Condition2 - Condition1 == 0  0.04894    0.03749   1.305    0.392  
Condition3 - Condition1 == 0  0.10425    0.03749   2.781    0.015 *
Condition3 - Condition2 == 0  0.05531    0.03749   1.475    0.303  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1
(Adjusted p values reported -- single-step method)

và sử dụng lsm glht(exp.model,lsm(pairwise~condition))dẫn đến

Note: df set to 62

     Simultaneous Tests for General Linear Hypotheses

Fit: lmer(formula = outcome ~ condition + (1 | participant) + (1 | pair), 
    data = exp, REML = FALSE)

Linear Hypotheses:
                             Estimate Std. Error t value Pr(>|t|)  
Condition1 - Condition2 == 0 -0.04894    0.03749  -1.305   0.3977  
Condition1 - Condition3 == 0 -0.10425    0.03749  -2.781   0.0195 *
Condition2 - Condition3 == 0 -0.05531    0.03749  -1.475   0.3098  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1
(Adjusted p values reported -- single-step method)

Như bạn có thể thấy, các phương pháp cho kết quả khác nhau. Đây là lần đầu tiên tôi làm việc với R và số liệu thống kê nên có thể có gì đó không ổn nhưng tôi không biết ở đâu. Câu hỏi của tôi là:

Sự khác biệt giữa các phương pháp được trình bày là gì? Tôi đã đọc trong một câu trả lời cho một câu hỏi liên quan rằng đó là về mức độ tự do ( lsmeansso với glht). Có một số quy tắc hoặc khuyến nghị khi sử dụng phương pháp nào, tức là phương pháp 1 phù hợp với loại tập hợp / mô hình dữ liệu này, v.v.? Tôi nên báo cáo kết quả nào? Nếu không biết rõ hơn, có lẽ tôi chỉ đi và báo cáo giá trị p cao nhất mà tôi có để chơi nó an toàn nhưng thật tuyệt khi có lý do tốt hơn. Cảm ơn

Câu trả lời:


17

Không phải là một câu trả lời hoàn chỉnh ...

Sự khác biệt giữa glht(myfit, mcp(myfactor="Tukey"))và hai phương pháp khác là cách này sử dụng thống kê "z" (phân phối chuẩn), trong khi các phương pháp khác sử dụng thống kê "t" (Phân phối sinh viên). Thống kê "z" giống như thống kê "t" với mức độ tự do vô hạn. Phương pháp này là một phương pháp tiệm cận và nó cung cấp các giá trị p nhỏ hơn và khoảng tin cậy ngắn hơn các phương pháp khác. Các giá trị p có thể quá nhỏ và khoảng tin cậy có thể quá ngắn nếu tập dữ liệu nhỏ.

Khi tôi chạy lsmeans(myfit, pairwise~myfactor)thông báo sau xuất hiện:

Loading required namespace: pbkrtest

Điều đó có nghĩa là lsmeans(đối với một lmermô hình) sử dụng pbkrtestgói thực hiện phương pháp Kenward & Rogers cho mức độ tự do của thống kê "t". Phương pháp này dự định cung cấp các giá trị p và khoảng tin cậy tốt hơn so với phương pháp tiệm cận (không có sự khác biệt khi mức độ tự do lớn).

Bây giờ, về sự khác biệt giữa lsmeans(myfit, pairwise~myfactor)$contrastsglht(myfit, lsm(pairwise~factor), tôi vừa thực hiện một số thử nghiệm và quan sát của tôi là những điều sau đây:

  • lsmlà giao diện giữa lsmeansgói và multcompgói (xem ?lsm)

  • Đối với một thiết kế cân bằng, không có sự khác biệt giữa các kết quả

  • Đối với một thiết kế không cân bằng, tôi quan sát thấy sự khác biệt nhỏ giữa các kết quả (sai số chuẩn và tỷ lệ t)

Thật không may, tôi không biết đâu là nguyên nhân của những khác biệt này. Có vẻ như lsmcác cuộc gọi lsmeanschỉ để có được ma trận giả thuyết tuyến tính và mức độ tự do, nhưng lsmeanssử dụng một cách khác để tính toán các lỗi tiêu chuẩn.


Cảm ơn đã phản ứng chi tiết! Tôi đã bỏ lỡ sự khác biệt hoàn toàn trong thống kê kiểm tra ... Bạn đề cập rằng các giá trị có thể quá nhỏ và các TCTD quá hẹp đối với phương pháp tiệm cận. Tập dữ liệu của tôi bao gồm ~ 30 người tham gia vì vậy tôi đoán tôi sẽ tuân theo thống kê t. Khi bạn nói rằng phương pháp Kenward & Rogers dẫn đến giá trị p tốt hơn, bạn có nghĩa là chính xác hơn hay nhỏ hơn? Vì vậy, sự khác biệt là do sự khác biệt trong các phương pháp tính toán df và SE và không phải do sử dụng sai một trong số chúng với mô hình của tôi, nếu tôi hiểu đúng về bạn. Có cách nào để chọn phương pháp "tốt nhất" ở đây không?
schvaba986

11
(Tôi là nhà phát triển gói lsmeans ) lsmeanssử dụng gói pbkrtest, cung cấp cho (1) phép tính df Kenward-Rogers và (2) ma trận hiệp phương sai được điều chỉnh với độ lệch giảm trong ước tính. Nếu bạn đặt lần đầu tiên lsm.options(disable.pbkrtest=TRUE), thì lsmeanscuộc gọi với adjust="mvt"sẽ mang lại kết quả tương tự glht, ngoại trừ sự khác biệt nhỏ do thuật toán ngẫu nhiên được sử dụng bởi cả hai gói cho phân phối t đa biến.
rvl

3
Tuy nhiên, tôi đề nghị điều chỉnh "mvt" mà không vô hiệu hóa pbkrtest, vì điều chỉnh sai lệch và thực tế là không có giá trị df, tiệm cận (z) về cơ bản giả định df vô hạn, do đó mang lại giá trị P thấp một cách phi thực tế.
rvl

3
Nhân tiện, summaryphương thức cho glhtphép các phương pháp thử nghiệm bước xuống khác nhau bên cạnh việc điều chỉnh bội số một bước (các TCTD đồng thời) mặc định. Ở một điểm hoàn toàn khác, nếu bạn có nhiều hơn một yếu tố, lsmcó thể tạo ra các loại so sánh thông thường khá dễ dàng, trong khi mcpkhông thể làm điều đó.
rvl
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.