Jeśli chcesz pozostać przy tej aov()
funkcji, możesz użyć emmeans
pakietu, który obsługuje aovlist
(i wiele innych ) obiektów.
library("emmeans")
# set orthogonal contrasts
options(contrasts = c("contr.sum", "contr.poly"))
aov_velocity <- aov(Velocity ~ Material + Error(Subject / Material), data = scrd)
Po utworzeniu emmGrid
obiektu w następujący sposób
emm <- emmeans(aov_velocity, ~ Material)
bardzo łatwo jest uzyskać wszystkie porównania (post hoc) parami za pomocą pairs()
funkcji lub dowolnego pożądanego kontrastu za pomocą contrast()
funkcji emmeans
pakietu. adjust
Argumenty tych funkcji umożliwiają wielokrotne dostosowanie testów :
pairs(emm) # adjust argument not specified -> default p-value adjustment in this case is "tukey"
Aby uzyskać więcej informacji na ten temat, uważam, że szczegółowe emmeans winiety i dokumentacja są bardzo pomocne.
Ponadto, można znaleźć kompletne (powtarzalne) Przykład wraz z opisem, w jaki sposób uzyskać odpowiednie ciężary kontrast w moją odpowiedź tutaj .
Należy jednak zauważyć, że zastosowanie modelu jednoczynnikowego do testów post hoc może prowadzić do antykonserwatywnych wartości p, jeśli sferyczność zostanie naruszona.