Applied Nonparametric Statistics-lec6

Ref: https://onlinecourses.science.psu.edu/stat464/print/book/export/html/8


前面都是对一两个样本的检查,现在考虑k个样本的情况,我们的假设是:

  • Analysis of Variance (ANOVA)

assumptions are:

  1. Groups are independent
  2. Distributions are Normally distributed
  3. Groups have equal variances

那么我们的假设就是:

H0:μ1=μ2=μ3
H1:at least one not equal

R里面使用anova函数,具体可以参见以前的代码。(计算α多样性指数中的Simpson Index)

simpsonBox = read.csv("simpsonIndex1.csv")
Group = factor(c(rep(1,21), rep(22,21), rep(43,20)), labels = c("A", "B", "C"))
simpsonData = data.frame(simpsonIndex = simpsonBox$x, group = Group)
# 非参数检验,检查方差是否相同
fligner.test(shannonIndex ~ group, data = shannonData)
# 正态分布的数据,检查方差是否相同
bartlett.test(simpsonIndex ~ group, data = simpsonData)
# anova
simpsonAov <- aov(simpsonIndex ~ group, data = simpsonData)
summary(simpsonAov)

  

  • 非参数的方法则是kruskal test

kruskal.test


 

上面的anova分析之后,如果我们拒绝了原假设,知道几个组的均值是不同的,那么两两组之间,它们差异的显著性如何?

就像之前做过的TukeyHSD(要求数据正态分布),我们还可以做

  • Bonferroni Adjustment

The Bonferroni adjustment simply divides the Type I error rate (.05) by the number of tests (in this case, three).

pairwise.t.test(simpsonData$simpsonIndex,simpsonData$group,p.adjust="bonferroni")

  我们可以比较一下,它和TukeyHSD在结果上的差别:

其实结果是一致的,都说明C组与A组的差异显著。一般认为Bonferroni更保守。我们使用的函数可以参照:

https://stat.ethz.ch/R-manual/R-devel/library/stats/html/pairwise.t.test.html


  •  Holm Adjustment

这篇文章指出,Holm Adjustment比Bonferroni更好,同样使用pairwise.t.test函数。

Ref: http://rtutorialseries.blogspot.jp/2011/03/r-tutorial-series-anova-pairwise.html

  • The Fisher Least Significant Difference (LSD) method essentially does not correct for the Type I error rate

for multiple comparisons and is generally not recommended relative to other options. 

library(agricolae)
LSD.test()

   

posted @ 2017-06-10 13:59  陆离可  阅读(221)  评论(0编辑  收藏  举报