高通量数据分析过程中常见的三个概念,非常容易混淆。
标准化 Data Scaling
为了使不同变量之间可以比较,例如
- 转录组中有些基因本身表达量就大,有些表达量小,不做标准化的话,直接做PCA之类的模型,会默认表达量大的对模型贡献就大,影响正确结果
- 代谢组中有些代谢物含量天然高,有些天然低,同理
归一化 Sample Normalization
为了消除样本自身或者测样的技术差异,使样本间可以比较。例如
- 转录组不同样本如果测序深度不同,就会导致基因的read数不同,不做归一化就会影响结果
- 代谢组不同样本,例如尿液样本可能浓度不同就会影响结果
数据转换 Data transformation
为了使数据符合正态分布
转录组
转录组分析流程中标准化和归一化被统一叫成了标准化,或者有些资料里称为组内标准化和组间标准化。
转录组的标准化有多种方法,但是很多是兼顾了组内和组间两方面
寻找差异基因的时候,只涉及单个变量组间对比,不涉及样本内不同变量的比较,因此不需要做组内标准化,这也是为什么DESeq2等软件要求用原始counts数据的原因,这些软件设计了只针对组间的标准化。而目前常见的标准化方法则包含了组内标准化
做PCA的时候,需要衡量一个样本内不同变量的权重,因此需要做组内标准化。R自带的scale可以进行组内标准化,但是用原始counts数据做PCA可能还需要组间标准化,因此可以考虑用DESeq2标准化之后的数据
代谢组
代谢组分析流程中还是分为标准化和归一化
做PCA时,标准化可以用R自带参数scale实现,如何实现归一化?MetaboAnalyst网页版或者R包可以提供归一化功能,暂时没有找到其他方法
代谢组寻找差异代谢物是通过VIP值和P值,求P值的时候只需要归一化,而VIP值则需要再标准化
因此代谢组数据可以统一做归一化,然后在做PCA模型的时候,再标准化
其他
- 对列归一化:将各列的总和拉平,是为了让同一基因(代谢物)在不同样本(各列)之间能比较
- 对行归一化:将各行的总和拉平,是为了让同一样本内不同基因或代谢物(各行)之间能比较