我有一个数据集,我想使用方差分析测试来了解不同牡蛎处理之间的生长是否存在显着差异。如果我的统计知识生疏并且数据格式不正确,我深表歉意,但我的数据集是长格式,看起来像这样:
Oyster Treatment Length.Difference
1 T1 1.32
2 T3 3.45
3 T4 6.12
4 T4 -0.12
5 T2 3.23
6 T1 5.09
7 T3 -0.92
8 T2 2.32
9 T1 0.09
10 T4 5.11
我试图看看 T1 和 T2、T1 和 T3、T2 和 T3 等之间是否存在显着差异。我(不成功)尝试通过以下方式按类别拆分数据:
lapply(split(df1, df1$Treatment), function(i){
anova(lm(Length.Difference ~ Oyster, data = i))
})
如果有人能解决我的问题,我将不胜感激!非常感谢!
我建议使用以下方法来比较不同治疗条件下的长度差异。您可以忽略 tibble / tribble 部分 - 我只是用它们来获取您的数据。要成对比较每种治疗方法,您需要在 ANOVA 模型之后使用事后测试,Tukey 的 HSD 是一个流行的选择。
base::library(package = tibble)
df <- tibble::tribble(
~Oyster, ~Treatment, ~Length.Difference,
1, "T1", 1.32,
2, "T3", 3.45,
3, "T4", 6.12,
4, "T4", -0.12,
5, "T2", 3.23,
6, "T1", 5.09,
7, "T3", -0.92,
8, "T2", 2.32,
9, "T1", 0.09,
10, "T4", 5.11
)
anova_model <- stats::aov(
data = df,
formula = Length.Difference ~ Treatment
)
stats::TukeyHSD(anova_model)