由于 Levene 检验只是对样本方差(残差)而不是样本均值进行的方差分析,因此您可以手动计算残差,然后使用 TukeyHSD 检验运行方差分析作为事后处理。
首先,如标题所示进行多重比较:
使用您的示例,使用额外的因素(cat2),这样我们也可以进行交互:
df <- df %>% group_by(cat, cat2) %>%
mutate(dat.med = ifelse(dat,median(Ctmax, na.rm=TRUE), ifelse(dat==NA, NA)))
上面的代码跳过 NA 值并计算每个因子组合的样本中位数,将它们放入数据集中的新列 (dat.med) 中。
然后我们计算残差,将它们更改为绝对值并将它们放入另一列中:
df$dat.med.res<-abs(df$dat-df$dat.med)
# Then we run an ANOVA, and post-hoc if necessary:
levene.dat.aov<-aov(dat.med.res~cat*cat2,df)
summary(levene.dat.aov)
TukeyHSD(levene.dat.aov)
要添加重复测量,请将方差分析更改为:
aov(dat.med.res~cat+Error(Subject/(cat)),df)
对于与两级因子的成对比较(使用包 PairedData):
levene.var.test(df$dat[df$cat=="A"], df$dat[df$cat=="B"],location=c("median"))