比如我们分析数据时,按照正常的分析流程,做完PCA后的得分图很有可能像这样:

该图是一组代谢组学的数据处理后结果,看到这样的结果,你的第一反应是什么?没错,应该是从这张图上先看出一些基本信息,因为我们对数据进行一些前处理,比如缺失值填充,删除CV值比较大的代谢物,剩下的数据用了正态标准化,然后画了这个PCA得分图。
那么按照道理,背景相似的样本(也就是生物学重复之间)得到的PCA得分应该类似,在图中应该会大致聚在一起,但是从这张图我们可以发现:
不同组的样本分类情况不好(其中0是控制样本,即QC,1是实验组,2是对照组)。
同一组不同批次的样本分开,这是不合理的,说明我们不同批次的上样,对样本的定量产生了某种影响,也就是出现了批次效应(DOI: 10.1038/nrg2825)。
当然,如果这些你都不管,继续往下做统计分析,功能分析等等,最后你得到你感兴趣的差异对象,并用后续分子生物学之类的实验验证出来了,那么,恭喜,你非常幸运~~
但如果你一心寄托与这样的幸运,估计你们组的老板,师兄师姐们只能对你说:好自为之~~(因为他们在这一行打拼的时间比较久,对于这种幸运出现的概率,他们心中已经都有谱。)
抛开这种幸运,单纯就数据处理来讲,其实我们可以做的事情还有不少。出现上图中的那种情况,极有可能是我们在做实验的过程中引入了某些误差导致的,不管这些误差是你人为不小心还是仪器本身带来的。
鉴于此,全世界相关领域的研究人员就在想,能不能通过某些数据处理的方法而减少这些误差或者减弱这些效应?比如数据校正或者数据标准化之类的方法等等。。。相关的文章已经发表了很多,你可以直接通过我们云平台的googlescholarR模块直接查找(再强调一遍,你不需要翻墙直接可用),比如我们想找对于减弱批次效应,大家都有哪些已发表的文章呢:

如果你想找在R语言里面都有哪些方法可以具体实现,那么在googlefilterR模块里面仍在可以这样搜索:

对于数据校正或者标准化的方法,粗略估计应该不下二十种,比如我们常说的中位数、均值、总强度标准化,正态标准化,极差标准化,分位数标准化,或者支持向量机回归校正,局部加权回归校正等等。我们可以尝试使用这些方法或者方法组合对我们的数据进行一些处理,看看效果怎样。


看到没,是不是很神奇~!~不同的数据变换手段得到的效果不一样,但整体来看,做这些处理比不做这些处理要好很多。
不要问我上面具体使用了哪些方法,适合这样数据的方法,不一定适合你的数据!你应该做的是,都尝试一下!
好在我上面说的好多数据校正或者标准化的方法,在iOmics云平台和悟空云平台里面都可以简单实现,你只需要点点手指即可查看不同方法的效果。后续我还会逐渐慢慢的往里面增加其他的方法。
此外,再说一点:不管是在往期的推文中,还是在跟大家讲解讨论的过程中,我一直强调,对数据的前处理(其中最重要一点是数据质量控制)是最最重要的,没有之一!数据预处理的不当,你后续得到的结果很有可能就是垃圾!!!
可能我用“垃圾”一词显得有点重,但这主要是为了强调,不管各行各业,我们在做数据分析时,对数据的前处理,尤其是对数据的质量控制一定要重视起来。
【文末温馨提示】
悟空云平台最近又增加不少新的而有趣的模块,欢迎小伙伴们前去尝试~~