组间差异检验,终于有人讲清楚了!

什么是组间差异检验?就是组间的差异分析以及显著性检验,应用统计学上的假设检验方法,检验组间是否有差异及其差异程度。坦率地讲,所有的差异检验都基于一个假设:组间没有差异,变量之间没有关系(即原假设,H_0)。上海交大王成老师也说方差分析其实研究的就是不同水平下是否有差异化的假设检验问题。而假设检验就是先对总体参数提出某种假设,然后利用样本信息判断假设是否成立的过程。

参数与非参数检验

所以,本着负责的态度,在本文的开始我们有必要回顾一下《概率论与数理统计》中关于假设检验的基本概念。

  • 总体(population):包含所研究的全部个体(数据)的集合。
  • 样本(sample):从总体中抽取的一部分元素的集合。
  • 参数(parameter):用来描述总体特征的概括性数字度量。
  • 统计量(statistic):用来描述样本的概括性数字度量。

其中参数这个概念最值得我们好好体会,因为今天的主角组间差异检验,在这个水平上可以分为两类:参数检验和非参数检验。那么什么叫参数检验和非参数检验,它们之间的区别是什么呢。要理解前面的问题,首先需要明白统计推断的概念。

统计推断是研究如何利用样本数据来推断总体特征的统计学方法,包括参数估计和假设检验两大类。总体的参数一般是未知的,通常可以用样本统计量来对总体的参数进行估计,例如可以用样本均值对总体均值进行点估计,利用样本均值的分布对总体均值进行区间估计,这些都称为参数估计。

对未知参数的假设进行检验称为参数统计,所用的检验叫做参数检验(Parameter test)。不依赖总体分布的具体形式,也不对参数进行估计或检验的统计方法,叫做非参数统计,其检验方法就是非参数检验(Non-parametric test)

参数检验和非参数检验的区别:

  • 1 参数检验是针对参数做的假设,非参数检验是针对总体分布情况做的假设,这个是区分参数检验和非参数检验的一个重要特征。例如两样本比较的t 检验是判断两样本分别代表的总体的均值是否具有差异,属于参数检验。而两样本比较的秩和检验(wilcoxcon 检验及Mann-Whitney 检验)是判断两样本分别代表的总体的位置有无差别(即两总体的变量值有无倾向性的未知偏离),自然属于非参数检验。
  • 2 二者的根本区别在于参数检验要利用到总体的信息(总体分布、总体的一些参数特征如方差),以总体分布和样本信息对总体参数作出推断;非参数检验不需要利用总体的信息(总体分布、总体的一些参数特征如方差),以样本信息对总体分布作出推断。
  • 3,参数检验只能用于等距数据和比例数据,非参数检验主要用于记数数据。也可用于等距和比例数据,但精确性就会降低。

那么什么时候用参数检验,什么时候用非参数检验呢?非参数检验一般不直接用样本观察值作分析,统计量的计算基于原始数据在整个样本中的秩次,丢弃了观察值的具体数值,因此凡适合参数检验的资料,应首选参数检验。但是不清楚是否合适参数检验的资料,则应采用非参数检验。

此处也许大家期待作者带我们温习一下假设检验的4 个步骤(提出假设;构造检验统计量;根据显著水平,确定临界值和拒绝域;做出检验决策),但是带有几分傲气的作者绝情地不为我们没有学好的课程补刀,补课的事情让我们自己去做,他转而讲自己认为重要的知识点:抽样分布。

抽样分布

知道我们的研究对象整体处于什么状态,是一件非常重要的事情。三大抽样分布(t-分布、\chi^2分布、F-分布)和正态分布共同构成了现代数理统计学的基础,其中,正态分布和t-分布是关于均值的分布;\chi^2分布、F-分布是关于方差的分布。很多同学做统计做了很多年,却不知道为什么几乎每个方差分析都有F值。可见,统计学拼到最后拼的都是基础

离开分布,假设检验无从谈起;离开假设检验,差异分析毫无根基。同样地,出于人道主义,我们来重温一下抽样分布。

\chi^2分布

设 X1,X2,......Xn相互独立, 都服从标准正态分布N(0,1), 则称随机变量χ2=X12+X22+......+Xn2所服从的分布为自由度为 n 的\chi^2分布

t-分布

X_1服从标准正态分布N(0,1),X_2服从自由度为n的\chi^2分布,且X_1X_2相互独立,则称变量t=X_1/(X_2/n)^{1/2}所服从的分布为自由度为n的t-分布

F分布

X_1服从自由度为m\chi^2分布,X_2服从自由度为n\chi^2分布,且X_1X_2相互独立,则称变量F=(X_1/m)/(X_2/n)所服从的分布为F分布,其中第一自由度为m,第二自由度为n。一般滴,这里F就是均方之比。

不管是参数检验还是非参数检验,都要基于特定的分布来做假设检验。当总体分布已知时,例如总体服从正态分布,我们可以根据给定的显著性水平(通常为0.01 或0.05)查表获得临界值。当总体分布未知时,可以先用Permutation test 构造经验分布,再根据显著性水平获得临界值。

传统的统计量检验的方法是在检验之前确定显著性水平α,也就意味着事先确定了临界值和拒绝域。这样,不论检验统计量的值是大还是小,只要它的值落入拒绝域就拒绝原假设,否则就不拒绝原假设。这种给定显著性水平的方法,无法给出观测数据与原假设之间不一致程度的精确度量。要测量出样本观测数据与原假设中假设值的偏离程度,则需要计算pvalue值。pvalue 值,也称为观测到的显著性水平,它表示为如果原假设H_0正确时得到实际观测样本结果的概率。pvalue 值越小,说明实际观测到的数据与H_0之间的不一致的程度就越大,检验的结果就越显著。

变量较多,判断组间差异时需要多重检验的情况在宏基因组扩增子差异分析中十分常见。这种情况下,基于单次比较的检验标准将变得过于宽松,使得阳性结果中的错误率(FDR 值FalseDiscovery Rate)非常大(已经大到令人不可忍受的地步)。怎么办呢?最好的办法就提高判断的标准(p value),单次判断的犯错概率就会下降,总体犯错的概率也将下降。在多重检验中提高判断标准的方法,我们就称之为多重检验校正。从1979 年以来,统计学家提出了多种多重检验校正的方法。相应地,对p值校正之后的叫法也不一样,比如,FDR、Q value、Adjusted p-value,这个大家知道在多重检验时需要校正就行了,具体的用法作者有时间再教大家(这个作者真是皮啊~~)。

关于宏基因组或扩增子组间差异检验的理论知识就到这了,作者认为知道以上知识点是必要的,也告诉我们,今天我们讨论的是统计推断。换句话说,找差异,我们是专业的。

观察差异

人民为了找差异,这才学会做统计。为了说明组间的数据差异很大,人民开发了许多沿用至今的图画,下面我们就一起来揭开这一幅幅有差异的画面。

  • 箱线图(boxplot)

在数据科学家的工具箱里,这是一款经久不衰、常用常新的瑞士军刀。几乎只要想到差异分析,就会想到箱线图。也开发出类箱线图的工具比如小提琴图(小提琴图Violin plot)

  • 散点图(Scatter plot)
    散点图也是一款百搭的工具,可以和箱线图结合着用,当然多元分析大多也得借助这个的散点图。比如,回归分析、排序(PCA。CA、CCA、RDA,NMDS,PCoA)、聚类(均值聚类 、划分)用散点图来反映都是比较直观地。也开发有新的散点图比如叫火山图。


  • 热图(heatmap)
    热图可以简单地聚合大量数据,并使用一种渐进的色带来优雅地表现出来,可以很直观地展现数据的相对大小。在生物医学研究中,常用来展现基因表达或丰度数据,当然用它表达相关系数大小也是允许的。当然也有开发的热图,比如地理热图等。


树状图

一般有进化树和层次聚类树,如果你想表达对象之间的距离差异,最直观的的也许就是树状图了。为了用图表示亲缘关系,把分类单位摆在图上树枝顶部,根据分枝可以表示其相互关系,具有二次元和三次元。在数量分类学上用于表型分类的树状图,称为表型树状图(phenogram),掺入系统的推论的称为系统树状图(cladogram)以资区别。

贴心的作者小朋友把实现这些图形的常见R包列给大家,安装后就能用啦

类型 R包
箱线图 geom_boxplot() {ggplot2}
散点图 geom_point(){ggplot2}
热图 heatmap;pheatmap
树状图 ggtree;cluster
基于物种的差异检验

这里说的基于物种言下之意是通过统计分析,可以有针对性的找出分组间丰度变化差异显著的物种,并得到差异物种在不同分组间的富集情况,同时,可以比较组内差异和组间差异的大小,判断不同分组间的群落结构差异是否具有显著意义。也就是说可以找出区别组间的一个biomarker。

这类检验一般只输出p值,它的目的很简单,就是检验比较组之间的相似性距离是否有差异。常用的分析方法有卡方检验、Student t检验、Wilcoxon秩和检验等等。

如果只有两个样本比较,适合用卡方检验,不过说实在的,检验出来的结果没什么可靠性,因为现阶段16s研究不做重复实在“难以服众”了。先不说价格便宜,做重复压根没有难度,就是从生物学、统计学角度考虑,也需要做重复。

如果是两组样本(至少3重复),可以试一下Student t,Welch‘st以及Wilcoxon秩和检验。Student t检验需要样本符合正态分布,而且方差对齐。当组间样本数不同,方差也不对齐的时候,Welch’s t检验是很好的选择。

Wilcoxon秩和检验又叫Mann-Whitney U 检验,是基于变量排名的一种统计方法,不需要样本符合正态分布,也不需要样本方差对齐,是更为广泛的检验方法,但同时也由于检验太宽松,容易带来很多假阳性。

如果是多组样本比较,可以选择one way ANOVA、TURKEY以及Kruskal-Wallis H检验等方法。one way ANOVA和TURKEY其实都是基于方差分析,只不过后者带有后验,可以知道两个分组对整体差异的贡献度。

Kruskal-Wallis H检验本质也是一种秩和检验,与前两者的区别在于,它不需要样本数和方差的对齐,应用更为广泛。Kruskal-Wallis检验又被称之为单因素非参数方差分析。

毫不客气地讲,一般秩和检验或置换检验属于非参数检验。在这类差异检验中,有两种集成方法特别值得我们注意:LEfSe 、metastats。

  • LEfSe (LDA EffectSize)
    其实是一种判别分析。它通过生物学统计差异使其具有强大的识别功能。然后,它执行额外的测试,以评估这些差异是否符合预期的生物学行为。具体来说,首先使用non-parametric factorial Kruskal-Wallis (KW) sum-rank test(非参数因子克鲁斯卡尔—沃利斯和秩验检)检测具有显著丰度差异特征,并找到与丰度有显著性差异的类群。最后,LEfSe采用线性判别分析(LDA)来估算每个组分(物种)丰度对差异效果影响的大小。

得到结果展示如下,差异体现在柱形图和树状图上。LDA值分布柱状图中展示了LDA Score大于设定值(默认设置为4)的物种,即组间具有统计学差异的Biomarker。展示了不同组中丰度差异显著的物种,柱状图的长度代表差异物种的影响大小(即为 LDA Score)。

在进化分支图中,由内至外辐射的圆圈代表了由门至属(或种)的分类级别。在不同分类级别上的每一个小圆圈代表该水平下的一个分类,小圆圈直径大小与相对丰度大小呈正比。着色原则:无显著差异的物种统一着色为黄色,差异物种Biomarker跟随组进行着色,红色节点表示在红色组别中起到重要作用的微生物类群,绿色节点表示在绿色组别中起到重要作用的微生物类群,若图中某一组缺失,则表明此组中并无差异显著的物种,故此组缺失。图中英文字母表示的物种名称在右侧图例中进行展示。

  • metastats
    核心在于针对不同的特征分为t检验和Fish exact检验,t检验通过permutation去估算分布模型,从而计算p值,计算好的p值,利用FDR去判断存在显著差异的界限值。此软件主要针对两组之间的比较,兼顾考虑了物种中分布广泛的菌(t permutation的分析)和分布稀少的菌(卡方检验)。
+  将丰度数据归一化成为相对丰度
+ 组间T-test计算
+ 显著性检验
   + Permutation test 置换检验
      + 重复数 ≥8与重复数 <8的p值计算规则不同
          + 重复数 ≥8:只开展单物种的置换检验
          +重复数 <8:将混合整个样本进行置换检验
    + 组内某个物种的数目少于样本重复数的时候,会利用Fisher精确检验进行p值计算
+ 多重检验

metastats结果给出差异物种的p值和q值(表中 的数据是假的!)

Taxa mean
(group1)
variance
(group1)
standard error
(group1)
mean
(group2)
variance
(group2)
standard error
(group2)
p
value
q
value
Clostridia 0.0045 3.3191e-06 0.077 0.03 4.37e-05 0.089 0.0025 0.0257
Alphaproteobacteria; 0.2445 0.0018 0.0062 0.1117 0.003 0.009 0.0598 0.03933
Spirochaetia; 0.0002 1.448e-08 5.949e-05 0.00146 1.10134e-07 0.00016 0.003 0.0141
Nitrospira; 0.059 0.009 0.008 0.0874 7.1501e-05 0.003 0.0054 0.0323
Deltaproteobacteria; 0.037 0.32 0.009 0.03454 1.58e-05 0.0016 0.01484 0.03733
Acidimicrobiia; 0.003 9.0e-06 0.001518 0.02 0.003431 0.00619 0.001 0.020
Anaerolineae; 0.03 5.015e-06 0.001 0.0416 9.1706e-05 0.0048 0.002 0.0244
---- --- --- --- --- --- --- --- ---

基于矩阵的检验方法

所谓基于距离也就是检验的是群落差异而不是某个物种。上面所提及的检验方法,其实都只能告诉大家,这些分组是否有显著差异(可以简单理解为有无)。那如果想同时知道这些差异的程度(可以简单理解为多少)呢,那需要Anosim,Adonis以及MRPP等检验方法。这些方法不但可以输出检验显著性结果(p值),还有程度结果(R值),R值可以用来判断分组贡献度大小。Anosim、Adonis这些可用于多元统计检验的模型就非常适合了。要值得注意的是,Anosim本质是基于排名的算法,其实与NMDS的配合效果最好。如果是PCoA分析,建议配合使用Adonis检验结果。

  • Anosim

Anosim(Analysis of similarities)是一种非参数检验方法。它首先通过变量计算样本间关系(或者说相似性),然后计算关系排名,最后通过排名进行置换检验判断组间差异是否显著不同于组内差异。这个检验有两个重要的数值,一个是p值,可以判断这种组间与组内的比较是否显著;一个是R值,可以得出组间与组内比较的差异程度。Anosim用来检验组间的差异是否显著大于组内差异,从而判断分组是否有意义,Anosim分析使用R vegan包anosim函数,一般基于Bray-Curtis距离值的秩次进行组间差异显著行检验,详细计算过程可查看Anosim

该方法主要有两个数值结果:一个是R,用于不同组间否存在差异;一个是P,用于说明是否存在显著差异。以下分别对两个数值进行说明:
R值的计算公式如下:

rB:组间差异性秩的平均值(mean rank of between group dissimilarities)
rW:组内差异性秩的平均值(mean rank of within group dissimilarities)
n:总样本个数(the number of samples)

R的范围为[-1,1]
R>0说明组间差异大于组内差异,R<0组间差异小于组内差异。
R只是组间是否有差异的数值表示,并不提供显著性说明。

P值则说明不同组间差异是否显著,该P值通过置换检验(Permutation Test)获得。
置换检验大致原理:(假设原始分组为实验组和对照组)

1、对所有样本进行随机分组,即实验组和对照组。
2、计算当前分组时的R值,即为Ri。
3、重复当前操作N次,对所有Ri及原始R从大到小排序,R所处的位置除以N即为置换检验P值。

  • Adonis

ADONIS又称置换多因素方差分析(permutational MANOVA)或非参数多因素方差分析(nonparametric MANOVA),是一种基于Bray-Curtis距离的非参数多元方差分析方法。它与Anosim的用途其实差不多,也能够给出不同分组因素对样品差异的解释度(R值)与分组显著性(P值)。不同点是应用的检验模型不同,ADONIS本质是基于F统计量的方差分析,所以很多细节与上述方差分析类似。该方法可分析不同分组因素对样本差异的解释度,并使用置换检验对分组的统计学意义进行显著性分析。ADONIS分析使用R vegan包adonis函数进行分析,详细计算过程可adonis

  • MRPP

MRPP分析与Anosim类似,但是MRPP是基于Bray-Curtis的参数检验,用于分析组间微生物群落结构的差异是否显著,通常配合PCA、PCoA、NMDS等降维图使用,MRPP分析使用R vegan包mrpp函数,详细计算过程可查看MRPP

  • amova

分子方差分析法 (AMOVA)与ANOVA类似,是基于加权或非加权Unifrac距离矩阵,检验不同组间差异显著性的非参数分析方法。一般基于Unifrac距离,使用mothur软件amova函数进行组间差异分析,详细计算过程可查看Amova

  • Mantel test

Mantel test,Mantel test 是对两个矩阵相关关系的检验,顾名思义,是一种检验。既然是检验就得有原假设,它的原假设是两个矩阵见没有相关关系。检验过程如下:两个矩阵都对应展开,变量两列,计算相关系数(理论上什么相关系数都可以计算,但常用pearson相关系数),然后其中一列或两列同时置换,再计算一个值,permutation 成千上万次,看实际的r值在所得r值分布中的位置,如果跟随机置换得到的结果站队较近,则不大相关,如果远远比随机由此得到显著性。详细计算过程可查看Mantel test

方法 R值 p值
Anosim R-value介于(-1,1)之间,R-value大于0,说明组间差异显著 P< 0.05 表示统计具有显著性
Adonis R2 表示不同分组对样本差异的解释度 Pr表示P 值,小于0.05 说明本次检验的可信度高
Amova --- p-value表示P 值,小于0.05 说明组间差异显著
MRPP A值大于0说明组间差异大于组内差异 Significance值小于0.05说明差异显著
Mantel test r为相关系数,r值越大两矩阵相关性越大 P<0.05表示统计具有显著性

作者实在太懒,坚持别人已经说过的话不愿再说,只要抄过来就好了,在文章的最后他把赵小胖的一段话原版搬了过来:

无论你从事何种领域的科学研究还是统计调查,显著性检验作为判断两个乃至多个数据集之间是否存在差异的方法被广泛应用于各个科研领域。笔者作为科研界一名新人也曾经在显著性检验方面吃过许多苦头。后来醉心于统计理论半载有余才摸到显著性检验的皮毛,也为显著性检验理论之精妙,品种之繁多,逻辑之严谨所折服。在此,特写下这篇博文,以供那些仍然挣扎在显著性检验泥潭的非统计专业的科研界同僚们参考。由于笔者本人也并非统计专业毕业,所持观点粗陋浅鄙,贻笑大方之处还望诸位业界前辈,领域翘楚不吝赐教。小可在此谢过诸位看官了。


参考:

  1. 方差分析|上海交通大学数学系|王成
  2. 关于显著性检验,你想要的都在这儿了!!(基础篇)
  3. 配对t检验,你用对了吗?
  4. SPSS:T检验、方差分析、非参检验、卡方检验的使用要求和适用场景
  5. T检验、方差分析 的区别
  6. 微生物群落差异分析方法大揭秘
  7. 置换多元方差分析
  8. 抽样分布篇之七:抽样分布总结
  9. Notched Box Plots
  10. 利用R语言heatmap.2函数进行聚类并画热图
  11. 诺禾致源16S分析网页版结题报告|这个链接是空的
  12. 微生物LEfSe分析圖表解讀
  13. 美吉生物分析报告
  14. 如何正确选择差异统计检验
  15. metastats
  16. adonis
  17. Mantel Test
    单因素分析和多因素分析的结果不一致,咋整?

作者简介:

属性
姓名 周运来
性别 男(已婚)
爱好 工作
业余 生活

推荐阅读更多精彩内容