不完全谱系分选和基因渗入-Hyde

1.简介

HyDe使用系统发育不变量检测系统发育数据集中的杂交,主要通过python包Phyde对三元组分类群进行假设检验,以检测杂交。

2.安装

2.1 配置环境

#使用conda安装软件依赖
conda install cython numpy multiprocess
#方法1安装:进入python环境,使用pip安装
pip install phyde
#方法2安装:从github安装
git clone https://github.com/pblischak/HyDe.git
cd Hyde
python3 -m pip install .
make test #可以不用,只是用来检测是否安装成功的
make test_threads #可以不用,只是用来检测是否安装成功的

3.输入文件

3.1 DNA序列

典型的phylip格式,第一行表示该文件有16个样本,位点数目为10,后续每行包含一个样本及其序列,用tab分隔。每个样本的名字长度没有限制且可以不相等。

16 10
i1  ATAGTCACCA
i2  ATAGTCACCA
i3  ATAGTCACCA
i4  ATAGTCACCA
i5  ATAGTCATCA
i6  ATAGTCACCA
i7  ATAGTCACCA
i8  ATAGTCACCA
i9  ATTGTCACCA
i10  ATAGTCACCA
i11  ATAGTCACCA
i12  ATCGTCACCA
i13  ATAGTCACCA
i14  ATCGTCACCA
i15  ATCGTCACCA
i16  ATAGTCTCCA

3.2 样本对应关系

每行包含一个样本和标签,用tab分隔,并且样本的名字顺序必须和DNA序列文件中的样本顺序一致。

i1      sp1
i2      sp1
i3      sp1
i4      sp1
i5      sp1
i6      sp2
i7      sp2
i8      sp2
i9      sp2
i10     sp2
i11     sp3
i12     sp3
i13     sp3
i14     sp3
i15     sp3
i16     out

3.3 三元组文件(可选)

可选输入文件,输入感兴趣的三元组文件,第一列为亲本1,第二列为假定的杂交物种,第三列为亲本2

sp1  sp2  sp3
sp1  sp3  sp2
sp2  sp1  sp3

4. 输出文件

4.1 第一步

#-i就是DNA序列文件,-m就是样本对应关系,-o输出前缀,-n样本数量,-t分组数量,-s位点数量,-j线程数量
#-tr:如果有想测试的三元组,按照三元组文件格式输入即可;如果没有,软件默认是输入数据的所有三元组
#--prefix:输出前缀也可以修改,默认是hyde
#-p:默认过滤的P值为0.05
#--ignore_amb_sites:是否忽略gap/不确定的碱基位点
python /path/run_hyde_mp.py -i input.phy -m map.txt -o out -n 16 -t 4 -s 50000 -j 10

输出文件有两个,一个是所有三元组的文件<prefix>-out.txt,一个是过滤后的三元组文件<prefix>-out-filtered.txt,第一列为亲本1,第二列为杂交种,第三列为亲本2,第四列为Zscore,第五列为P值,第六列为Gamma值,解释为杂交种来源于P2的比例(不要怀疑,你没看错,就是P2),后续的列为每个位点的数目。

4.2 第二步(可选步骤)

#运行完第一步后,如果想看一个群体种多个个体之间的或者不同群体多个个体之间的杂交信息,可以将想测试的三元组按照三元组文件格式输入即可
python /path/individual_hyde_mp.py -i input.phy -m map.txt -o out -n 16 -t 4 -s 50000 -tr triples.txt -j 10

如果你每个群体只有一个个体,那么就不用做第二步了。

4.3 第三步(可选步骤)

#-r: bootstrap的重复次数,默认是100
python /path/bootstrap_hyde_mp.py -i input.phy -m map.txt -o out -n 16 -t 4 -s 50000 -tr triples.txt -j 10 -r 200

官方推荐:如果DNA序列的位点数目≥10000,就运行第二步;如果DNA序列的位点数目<10000,就运行第三步;

5. 原理讲解

5.1 系统发育不变量

系统发育不变量是指在许多常见的生物序列沿着进化树进化模型中,现存分类群中碱基模式的频率满足系统发育不变量的多项式关系。
对于一个有根的四元组(亲本1、亲本2、杂交种、外群)有以下拓朴结构:(((P1,Hyb),P2),O),我们描述该四元组可能位点模式的概率分布为:P(ijkl) = P(O = i, P1 = j, Hyb = k, P2 = l), with i, j, k, l ∈ {A, G, C, T}。当位点数目足够多时,已经通过模拟和经验分析表明,多位点数据为模型提供了良好的近似,并且可以用于计算位点模式概率。有研究表明f1 = piijj − pijij和f2 = pijji − pijij的比值拟合模型更好,这也是Hyde检测的基础逻辑。


Hyde-Gamma计算

5.2 Gamma值

根据上面的公式可以看出Gamma值理论是在负无穷大到正无穷大的,但是基于生物学假设来说杂交种来源于亲本的概率为[0,1],因此第一步的脚本run_hyde_mp.py生成的两个文件<prefix>-out.txt是所有三元组的结果,而<prefix>-out-filtered.txt是Gamma值[0,1]之间的三元组结果。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容