zl程序教程

您现在的位置是:首页 >  其他

当前栏目

利用VCF文件构建系统发育树

2023-02-25 18:21:56 时间

导读

本文将介绍三种使用VCF文件,构建系统发育树的方法,包括程序的安装,使用,已及系统发育树的可视化与美化。

1. VCF2Dis

VCF2Dis是一种新的简单高效的软件,用于计算基于VCF格式的距离矩阵

1.1. 安装

# 下载
wget -c https://github.com/hewm2008/VCF2Dis/archive/v1.47.tar.gz

# 解压
tar -zxvf v1.47.tar.gz

# 进入程序目录
cd VCF2Dis  

# 编译
make ; make clean   

# 测试运行
./bin/VCF2Dis

1.2. 距离矩阵

  • 利用VCF2Dis生成距离矩阵
VCF2Dis -i test.vcf -o test.mat

1.3. mat2nwk

  • 文件转换
FastMe2.0

上传距离矩阵到在线网站, FastMe2.0。上传以后,选择Data typeDistance matrix。 然后根据自己的需要进行配置,最后填入任务名称和Email来获取结果通知。

  • 结果下载

点击下载结果

结果下载

结果文件是一个压缩文件,里面包含:

  1. 一个.nwk文件用于进化树可视化
结果文件
  1. stats.txt
	记录了文件转换过程中,选择的参数
  1. stdout.txt
	转换过程中的日志文件,记录了程序的运行过程

1.4. iTOL美化

十分推荐利用iTOL对进化树进行美化,该程序是网页版,配置简单,结果十分漂亮。

iTOL

2. Phylip

PHYLIP是用于推断系统发育的免费程序包。

2.1. 安装

  • 源码编译安装
# 下载PHYLIP 
wget -c http://evolution.gs.washington.edu/phylip/download/phylip-3.697.tar.gz

# 解包
tar zxf phylip-3.697.tar.gz 

# 进入程序文件夹
cd phylip-3.695/src/

# 复制文件
cp Makefile.unx Makefile

# 编译
make install  # 可能需要sudo 权限
  • conda安装
# 新建phylip环境,并安装phylip
conda create -n phylip -c bioconda phylip -y

2.2. 格式转换

  • 转换脚本下载
# 下载
wget -c https://github.com/edgardomortiz/vcf2phylip/archive/refs/tags/v2.8.zip

# 解压
unzip v2.8.zip
  • 转换为PHYLIP matrix
python vcf2phylip.py -i test.vcf

# PHYLIP matrix是默认格式,不同输出格式,见下参数
# -f FASTA matrix
# -n NEXUS matrix
# -b binary NEXUS matrix

注意:test.vcf中的样本名一定要少于10个字符,否则会报错

2.3. 建树

  • 构建配置文件
  1. seqboot.par
test.phy  # 本程序的输入文件
R # 选择bootstrap
100 # 设置bootstrap的值,即重复的replicate的数目,通常使用1000或者100,注意此处设定好后,后续两步的M值也为1000或者100
Y # yes确认以上设定的参数
9 # 设定随机参数,输入奇数值。
  1. dnadist.par
seqboot.out # 本程序的输入文件
T  # 选择设定Transition/transversion的比值
2.3628  # 比值大小
M   #修改M值
D  # 修改M值
100  # 设定M值大小
2  # 将软件运行情况显示出来
Y  # 确认以上设定的参数
  1. neighbor.par
dnadist.out  # 本程序的输入文件
M
100   # 设定M值大小
9  # 设定随机数,输入奇数值
Y  # 确认以上设定的参数
  1. consense.par
nei.tree  #本程序的输入文件
Y #确认以上设定的参数
  • phylip建树
# 在 phylip 文件夹下,依次运行下面的命令

# seqboot
./exe/seqboot < ./seqboot.par && mv ./outfile ./seqboot.out

# dnadist
./exe/dnadist < ./dnadist.par &&  mv ./outfile ./dnadist.out

# neighbor
./exe/neighbor < ./neighbor.par && mv  ./outfile ./nei.out && mv ./outtree ./nei.tree 

# consense
./exe/consense < ./consense.par && mv ./outfile ./cons.out && mv ./outtree ./constree 

3. IQ-tree

IQ-tree的建树方法与phylip类似,只是最后一步不一样,同样需要先转换文件格式为:phy(格式转换见2.2)。

3.1. 安装

  • 利用conda安装
# 新建iq-tree环境 并 安装iqtree
conda create -n iqtree -c bioconda iqtree -y

3.2. 建树

  • IQ-tree 建树(简单)
iqtree -s test.phy

替代模型选择与详细的分支评估,见http://www.iqtree.org/中说明

上面三种示例程序运行过程中使用的参数,需要根据自身数据进行调整。