Nếu bạn muốn gắn bó với aov()
chức năng, bạn có thể sử dụng emmeans
gói có thể xử lý aovlist
(và nhiều đối tượng khác ).
library("emmeans")
# set orthogonal contrasts
options(contrasts = c("contr.sum", "contr.poly"))
aov_velocity <- aov(Velocity ~ Material + Error(Subject / Material), data = scrd)
Sau khi tạo một emmGrid
đối tượng như sau
emm <- emmeans(aov_velocity, ~ Material)
rất dễ dàng để có được tất cả các so sánh cặp (post hoc) bằng cách sử dụng pairs()
chức năng hoặc bất kỳ độ tương phản mong muốn bằng cách sử dụng contrast()
chức năng của emmeans
gói. Điều chỉnh nhiều thử nghiệm có thể đạt được thông qua adjust
đối số của các chức năng này:
pairs(emm) # adjust argument not specified -> default p-value adjustment in this case is "tukey"
Để biết thêm thông tin về điều này, tôi thấy các họa tiết emmeans chi tiết và tài liệu rất hữu ích.
Ngoài ra, bạn có thể tìm thấy một ví dụ hoàn chỉnh (có thể tái tạo) bao gồm mô tả về cách lấy trọng số tương phản chính xác trong câu trả lời của tôi ở đây .
Tuy nhiên, lưu ý rằng việc sử dụng mô hình đơn biến cho các bài kiểm tra sau hoc có thể dẫn đến giá trị p chống bảo thủ nếu tính toàn cầu bị vi phạm.