[英]Testing mean of multiple series with ANOVA and Tukey HSD test in R
在R中,我有四個數值向量。 我想測試這四個向量的均值是否相同,如果不相等,則該均值更大而該均值更小(基本上,我想通過它們對四個向量進行排名)。
這篇文章非常適合我:
http://brownmath.com/stat/anova1
我正在遵循此指南:
https://www.r-bloggers.com/analysis-of-variance-anova-for-multiple-comparisons/
但是,此職位將停止測試四個均值是否相等,但如果答案不相同,我如何知道R中哪個均值更大而哪個均更小呢?
非常感謝你,
帖子中的代碼是:
a = c(65, 48, 66, 75, 70, 55)
b = c(64, 44, 70, 70, 68, 59)
c = c(60, 50, 65, 69, 69, 57)
d = c(62, 46, 68, 72, 67, 56)
dati = c(a, b, c, d)
groups = factor(rep(letters[1:4], each = 6))
fit = lm(formula = dati ~ groups)
anova (fit)
我將假設已滿足假設,尤其是殘差是獨立的 ,並且殘差的分布是同方差的,並且與正態分布足夠相似 。
首先請注意,您的ANOVA返回的p值為0.99,這意味着組均值之間沒有顯着差異。 如果p值低於0.05,則可以進行事后檢驗以進行成對比較。
TukeyHSD(aov(fit))
# Tukey multiple comparisons of means
# 95% family-wise confidence level
#
#Fit: aov(formula = fit)
#
#$groups
# diff lwr upr p adj
#b-a -0.6666667 -15.68081 14.34748 0.9992898
#c-a -1.5000000 -16.51415 13.51415 0.9921250
#d-a -1.3333333 -16.34748 13.68081 0.9944302
#c-b -0.8333333 -15.84748 14.18081 0.9986181
#d-b -0.6666667 -15.68081 14.34748 0.9992898
#d-c 0.1666667 -14.84748 15.18081 0.9999888
當然,這里沒有什么重要的。
multcomp軟件包功能更強大。 讓我們定義不同的成對比較。 它還可以為您提供經常在表格或圖中看到的群組字母。
library(multcomp)
pairwise <- glht(fit, linfct = mcp(groups = "Tukey"))
summary(pairwise)
cld(pairwise)
# a b c d
#"a" "a" "a" "a"
同樣,由於在您的示例中沒有什么重要的內容,因此所有因子水平都使用相同的字母。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.