首页 > 代码库 > 群体结构图形三剑客——PCA图

群体结构图形三剑客——PCA图

重测序便宜了,群体的测序和分析也多了起来。群体结构分析,是重测序最常见的分析内容。群体结构分析应用十分广泛,首先其本身是群体进化关系分析里面最基础的分析内容,其次在进行GWAS分析的时候,本身也需要使用PCA或structure分析的结果作为协变量,来校正群体结构对关联分析带来的假阳性。

我们之所以冠以 “群体结构三剑客”的称呼,那是因为这三张图(或者说三项分析)几乎总是在一篇文章中一起出现。虽然这三张图常常一起出现,但它们能够解释的生物学问题,以及绘制的方法都是有所不同的,所以我们还是一一来解释。

2.1 PCA图(主成分分析)
颜值:☆ ☆
实用性:☆ ☆ ☆ ☆

PCA图形的解读

PCA分析是一项朴实无华的分析内容,但它应用十分广泛,的确能够帮助我们解决某些生物问题。说起朴实无华,是因为它的结果不花哨且及其容易看懂,仅仅是一张散点图而已。

比如,下图来自熊猫重测序的文章[1],作者使用主成分1(principal component1)和主成分2作为X轴和Y轴绘制散点图,每个点代表1个样本。在这样的PCA图中,如果两个样本距离越远,则说明两个样本遗传背景差异越大。理想情况下,遗传背景相似的个体会在图中聚类在一起。

例如,这张图中涉及的熊猫个体分别来自3个不同的熊猫自然保护区。PCA分析的结果也将这些个体分为了3个亚群,和熊猫来源的地域信息完全一致。

技术分享 
图1 PCA分析将来自三个区的大熊猫准确区分开

但是如果你不仅仅满足于把图形基本信息读懂的话,你还是需要对PCA这一方法有初步的了解。PCA是一种线性代数中的数据处理方法,而这个方法的数学过程比较抽象,在这里有限的篇幅里不便展开讨论,感兴趣的同学可以自己百度查询。PCA分析应用的情境是:在某些情况下,我们数据实在过于复杂。

例如:对一个群体进行重测序,得到的SNP位点数是百万级别的。如果我们直接使用百万级别的SNP信息作为指标对个体进行区分,就会显得信息过于庞大而无法把握重点。PCA分析过程就是从这百万级别的信息中提取关键的信息,以便我们使用更少的变量(指标)就可以对样本进行有效区分。这些被提取出的信息,按照其效应从大到小排列,我们称之为主成分1(principal component1)、主成分2、主成分3… …

在实际文章中,我们不仅仅只使用PC1和PC2来对样本群体进行区分。从数学上理解,PCA分析的过程就是从大量数据指标中提取关键信息的过程。但PC1或PC2对总体信息的解释程度总是有限的。我们将之称为PCn对总体方差解释的百分比。一般重测序的PCA分析结果中,PC1对总体信息的解释比例在3~10%之间。所以,我们也需要关注一下其他主成分的分类效果。

例如在家蚕重测序文章中,分别使用主成分1和2绘图(左图)以及主成分3与主成分4绘图(右图)。两个聚类结果呈现了不同的意义。在PC1和PC2的聚类图中,将野生蚕和家蚕区分开了两个群体。而在PC3和PC4的聚类中,则分离出了两个来自江南地区高产丝量的品种。
所以,从生物学层面理解,PCA分析的过程就是信息浓缩的过程,会从原始的各个SNP位点信息中提取相似的信息,浓缩为新的变量PC1、PC2、PC3…. 输出。所以不同的主成分可能会(记住,仅仅是可能)对应不同的生物学意义,产生不同的聚类分类效果。

技术分享 
图2蚕群体利用不同主成分的聚类结果比较

在其他实际案例中的使用

PCA分析只是一种非常单纯的数学方法,具体有什么样的生物学意义还是需要具体问题具体分析。PCA分析在实际案例中应用主要包括:

1.检测离群样本

例如,在上图(右)中,两个高产的品种就属于离群样本。如果你材料已知都是来源同一品种的个体,这种离群样本可能就意味着在采样或测序过程中,出现了样本混淆。如果这些材料后续用于GWAS分析,个别样本出现离群则考虑要把这些离群样本剔除。当然,如果大量样本离群或出现群体分层(例如,上图的左图,明显分层为两个亚群体),则需要将PCA或structure分析的结果作为后续关联分析的协变量,校正它们对关联分析的影响。

2.推断亚群间的进化关系

例如下图这篇葡萄群体研究的文章[3],研究的葡萄品种来源三个地域。绿色的西部葡萄和红色的东部葡萄区分比较明显,而蓝色的中部葡萄夹杂在东、西两个亚群间,和两个亚群有大量重叠。作者从中推断,东、西两个地域的葡萄都有传播到中部地区,并伴随大量杂交,导致中部地区的品种系谱比较混杂,并没有形成自己独立的亚群。其实本人作为小白鼠也做过基因型检测,PCA结果最后被归类到江南地区人群。当然我对结果一点也不意外,因为我是如假包换的大胡建人。

<ignore_js_op>技术分享 
图3 葡萄亚群体的基因混杂现象

PCA分析和绘制的方法

PCA分析只是一种统计方法,我们可以使用一些群体统计软件计算出群体中PC1~pCn的数值,然后绘制散点图就可以了(绘制散点图其实利用excel就可以完成。当然,使用R语言绘图的话,会更加美观一些)。

在群体分析软件上,我们推荐GCTA软件中的PCA模块来完成分析(http://cnsgenomics.com/software/gcta/pca.html)。这个软件有window版本,但和本地blast类似(我们之前分享过)只能在Dos界面下的命令行模式运行。当然还包括比较老牌的PCA分析软件EIGENSOFT(http://www.hsph.harvard.edu/alkes-price/software/),但这个软件只有linux版本。总之,在生物信息领域,软件大都不太友好,这也是这个行业的现状。

当然,PCA分析不仅仅用在重测序的领域,在RNA-seq、16s meta rDNA 测序也被大量使用,只是将上文提到的SNP信息替换为表达丰度了而已。如果你对RNA-seq,16s meta 测序的PCA分析感到头疼,其实可以直接使用我们基迪奥新开发的免费在线分析云工具(www.omicshare.com/tools/)。

被各种生物信息软件虐过的生物狗们一起团结起来,英特纳雄耐尔就一定要实现… … 感觉有点跑题,重新喊一次口号:欢迎被各种生物信息软件虐过的生物狗们多给我们反馈修改意见,OS tools 的用户友好程度一定会持续提高的。 

参考文献:
【1】Zhao S, et al. (2013)Whole-genome sequencing of giant pandas provides insights into demographichistory and local adaptation. Nature genetics45(1):67-71.
【2】Xia Q, Guo Y, Zhang Z, et al.Complete resequencing of 40 genomes reveals domestication events and genes insilkworm (Bombyx)[J]. Science, 2009, 326(5951): 433-436.
【3】Myles S, Boyko A R, Owens C L, et al. Genetic structure and domesticationhistory of the grape[J]. Proceedings of the National Academy of Sciences, 2011,108(9): 3530-3535.

转自:

群体结构图形三剑客——PCA图
http://www.omicshare.com/forum/thread-816-1-180.html
(出处: OmicShare Forum)

 

群体结构图形三剑客——PCA图