利用admixtools进行群体分析

本文介绍了admixtools R包的安装与使用,包括f2、f3、f4统计量的计算,以及它们在遗传漂移和群体关系分析中的作用。f2衡量种群分化,f3检测混合,f4探索共享遗传漂移。D检验则用于检测群体间的基因交流。admixtools简化了数据分析流程,适用于遗传进化研究。
摘要由CSDN通过智能技术生成

admixtools分为好几个版本,包括linux软件版,以及两个R包版本,建议用admixtoolsR包,简单便捷,不需要自己建配置文件,我只简单的介绍一下这个包f2,f3,f4统计,f2,f3和f4描述种群如何相互关联,至于其他的功能自己去看,非常简单。

1.首先是包的安装

#用devtools下载github上的包
install.packages("devtools") # if "devtools" is not installed already
devtools::install_github("uqrmaie1/admixtools")
library(admixtools)

2.之后是admixtools对于数据格式的要求,之前的admixtools需要Eigenstrat格式,但是admixtools2可以直接使用plink格式。

#转换格式,保存到data文件夹
plink --vcf test.vcf --make-bed --allow-extra-chr  --out ./data/test

3.然后是f2的计算
f2是计算将两个种群分开的遗传漂移量。它是等位基因频率的预期平方差。因为之后的计算都是基于f2进行的,所以需要先进行f2计算。

library(admixtools)
library(tidyverse)
prefix = '/data/test' #读取plink文件
my_f2_dir = '/dataf2/'  #f2数据储存位置
extract_f2(prefix, my_f2_dir,pops=c('A','B'),maxmiss = 0) #计算f2,pops用于自定义样本,maxmiss 用于设定缺失率
#计算时间看自身数据大小,结果在dataf2文件夹中

其实f2和fst都可以粗略的对两个群体间分化程度进行比较,但是它们两个好像受群体大小的影响。

4.f3
f3(A;B,C)=f4(A,B;A,C)=1/2(f2(A,B)+f2(A,C)−f2(B,C))
根据公式可以看出f3(A;B,C) 可以检测A是否为B,C混合,A为B,C混合时,f3<0。
也可以把A固定,比如A设置为外群来比较B,C的关系。由于A为外群,f2(A,B),f2(A,C)基本是一致的,B和C种群越密切,f2(B,C))越小,f3(A;B,C)越大。但是要注意的是如果有的种群它与外群间的f2远小于其他种群的话,可能导致结果偏低。

f2_blocks = f2_from_precomp(my_f2_dir) #f2数据结果读取
popA = 'Denisova.DG'
popB = c('Altai_Neanderthal.DG', 'Vindija.DG')
popC = c('Chimp.REF', 'Mbuti.DG', 'Russia_Ust_Ishim.DG')
popD = c('EAR')
f3(f2_blocks, popA, popB, popC)

5.f4
f4(A,B;C,D)=1/2(f2(A,D)+f2(B,C)−f2(A,C)−f2(B,D))
f4测量两个总体对之间共享的漂移量。这个一般的把D设置为外群,A,B为姐妹群体,C为其他种群,由于D为外群,AD和BD基本一致,当B和C间密切时f2(B,C)<f2(A,C),f4为负数,反之同理。总结下来就是f4探究A,B群体是否与C群体有共享,当f4为正,表明A群体与C群体共享,f4为负,表明B群体与C群体共享。

f4(f2_blocks, popA, popB, popC, popD)

5.D检验
D检验用于检测群体间基因是否有交流,admixtools用的是BABA-ABBA方法,popA,popB为姐妹群体,popC为比较种群,popD为外群。当D>0时,A与C有交流,当D<0时,B与C有交流。

f4(prefix, popA, popB, popC, popD, f4mode = FALSE)  #BABA-ABBA

我也是接触遗传进化不久,纯属自己理解,有错误希望可以指出。
具体使用手册
https://uqrmaie1.github.io/admixtools/articles/admixtools.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值