生物信息基因组学

用qpGraph估计群体混合程度

2021-04-24  本文已影响0人  DumplingLucky

混合图(admixture graph)的一般方法是基于等位基因频率,通过系统树重建不同群体之间的遗传关系,从而允许添加混合事件。该方法在定义的拓扑结构上运行,并与测试组的预期等位基因频率相关性进行比较,估算组中所有对,三元组和四元组的f2,f3和f4统计值。 对于给定的拓扑结构,qpGraph提供分支长度(以遗传漂移为单位)和混合比例,可以实现分歧较近的亚群的混合事件的鉴定,比如人类亚群之间。 由于共同的基因漂移,拥有较新共同祖先的群体的等位基因频率将比其他物种多。该模型基于无根树,并且当我们显示以选定的外群为根的图时,结果应不依赖于根位置。
qpGraph分析案例:


qpGraph尝试构建一个模型,该模型在混合图中包含所描述的观察结果,模型中结合了多个群体之间的关系,这些群体可以是单个个体,也可以是更大的群体。 软件包ADMIXTOOLS的qpGraph(也称为“ ADMIXTUREGRAPH”)部分可以实现群体结构混合估计,枝长基于观察到的f统计量。

1. 输入文件

EIGENSTRAT格式的基因型文件:详细参考here

/data/qpGraph/Posth2018_Americas.packedancestrymapgeno
/data/qpGraph/Posth2018_Americas.ind
/data/qpGraph/Posth2018_Americas.snp

2. 准备参数文件

DIR: /data/qpGraph
genotypename: DIR/<filename>.packedancestrymapgeno
snpname: DIR/<filename>.snp
indivname: DIR/<filename>.ind
outpop:  NULL
useallsnps: YES
blgsize: 0.05
forcezmode: YES
lsqmode: YES
diag:  .0001
bigiter: 6
hires: YES
lambdascale: 1

参数说明

outpop:NULL不使用外群体通过杂合性对f-stats进行归一化,例如在图中选择一个SNP必须是多态的组。 
useallsnps:YES,每个比较都使用该特定测试中所有重叠的SNP,否则程序仅查看所有组之间的重叠SNP。 
blgsize:0.05,是Morgans中的块大小。 
diag:.0001,使用目标函数的整个矩阵形式来避免计算的最小二乘形式的基本依赖性。 
lambdascale:1,以便保留f统计量的标准缩放比例而无需额外的分母。 
lsqmode:YES,否则对于大型图形不稳定。 
hires: YES,控制输出更多小数。

3. 准备拓扑结构文件

我们基于先前发表的拓扑结构(Lipson和Reich 2017,Moreno-Mayar等2018和Scheib等2018),以下内容可以保存在名为“ Figure3a”的文件中。

root    R
label    Mbuti.DG    Mbuti.DG
label    Han.DG    Han.DG
label    Onge.DG    Onge.DG
label    MA1    MA1
label    USR1   USR1
label    USA_SanNicolas_4900BP    USA_SanNicolas_4900BP
label    Canada_Lucier_4800BP_500BP    Canada_Lucier_4800BP_500BP

edge    a R Mbuti.DG
edge    b R nonAfrica
edge    c1 nonAfrica EastEurasia
edge    c2 EastEurasia EastAsia
edge    c3 EastEurasia Onge.DG
edge    c4 EastAsia EastAsia2
edge    c5 EastAsia EastAsia3
edge    c6 EastAsia2 Han.DG
edge    c7 EastAsia2 EastAsia4
edge    c8 nonAfrica WestEurasia
edge    c9 WestEurasia E_HG2
edge    c10 WestEurasia E_HG3
admix   ANE E_HG2 EastAsia3
edge    c11 ANE MA1
admix   FA EastAsia4 E_HG3
edge    c12 FA Beringia
edge    c13 Beringia USR1
edge    c14 Beringia NA
edge    c15 NA Canada_Lucier_4800BP_500BP
edge    c16 NA NA2
edge    c17 NA2 USA_SanNicolas_4900BP

4. 运行程序

qpGraph -p parQpgraph -g Figure3a -o Figure3a.ggg -d Figure3a.dot > Figure3a.out

5. 解读输出文件

检查.out文件

outpop: NULL
population:   0             Mbuti.DG    5
population:   1               Han.DG    4
population:   2              Onge.DG    2
population:   3                  MA1    1
population:   4                 USR1    1
population:   5 USA_SanNicolas_4900BP   17
population:   6 Canada_Lucier_4800BP_500BP    6
before setwt numsnps: 882908  outpop: NULL
setwt numsnps: 681581
number of blocks for moving block jackknife: 713
snps: 681581  indivs: 36
lambdascale:     1.000

.out文件的最底部报告了异常值f4统计信息,该统计信息显示最低或最高的Z分数。 这些是根据拟合值和观察到的f4值之间的差异计算的。

outliers:
                                                      Fit          Obs         Diff   Std. error         Z


worst f-stat:       Mbu        USR        USA        Can       0.000000    -0.001849    -0.001849     0.000681    -2.717

我们可以使用程序graphviz通过以下命令将.dot文件中的图形可视化,然后从jupyter文件浏览器中查看生成的.png。 虚线箭头表示掺混物边缘,而实心箭头表示以FST×1,000为单位报告的边缘漂移,在最顶部,再次报告了最差的f4统计。

dot -Tpng Figure3a.dot -o Figure3a.png

.ggg文件记录了每个分支的混合边缘和漂变长度的详细比例。

参考:
https://comppopgenworkshop2019.readthedocs.io/en/latest/contents/07_qpgraph/qpGraph.html

上一篇下一篇

猜你喜欢

热点阅读