ParaAT是中科院基因组所的张章教授课题组开发的工具,它整合了计算ka/ks所需的一整套分析,包括:
- 蛋白序列比对(可选 clustalw2 | t_coffee | mafft | muscle)
- 根据蛋白比对结果回译成codon对应的核酸比对结果(Back-translated nucleotide alignments guided by amino acid alignments are more reliable and accurate than direct nucleotide alignments)
- 计算kaks值(KaKs_Calculator实现)
常用的kaks计算软件如paml和kakscalculator需要准备的文件和指令都比较复杂,上手困难且容易出现问题,使用ParaAT能自动批量准备所需要的计算文件,十分便捷。
1.下载和安装
ParaAT2.0下载
ParaAT下载地址为:https://ngdc.cncb.ac.cn/tools/paraat
“ParaAT.pl”是运行的脚本,下载解压后就可以直接使用。可以把解压后的路径加入环境变量,或者用脚本所在的绝对路径来运行。
依赖工具下载
- 蛋白比对工具:如clustalw2、mafft、muscle等
- Kaks_Calculator(https://ngdc.cncb.ac.cn/tools/kaks)
2. 输入文件准备
1.同源基因列表,格式如下
image.png每一列列代表不同的样品,每一行表示为同源基因。
2.fasta格式的氨基酸序列文件和核苷酸序列文件,(两个文件中对应的序列以及同源基因列表中的对应基因ID要完全相同)
3.多线程运行文件
该脚本运行需要一个单独文件来设置运行的线程数,默认文件名为proc,直接新建一个proc文件在里面输入一个数字来指定使用的线程数。
这三种文件的样本在安装包中有,分别是:test.homologs, test.pep, test.cds, proc,可以分别打开参考一下。
3.运行ParaAT
准备好文件之后运行非常简单,常用命令如下
ParaAT.pl -h test.homologs -n test.cds -a test.pep -p proc -m muscle -f axt -g -k -o result_dir #proc文件必须与输出位置在同一个目录下,不然会报错
之后就可以在result_dir里面提取kaks结果了
参数:
-h, 指定同源基因列表文件
-n, 指定核酸序列文件
-a, 指定蛋白序列文件
-p, 指定多线程文件
-m, 指定比对工具
-g, 去除比对有gap的密码子
-k, 用KaKs_Calculator 计算kaks值
-o, 输出结果的目录
-f, 输出比对文件的格式
注:
如果需要用PAML,Hyphy等工具分析kaks时,ParaAT也可以生成这些工具所需的输入格式(-f 参数)
如果是细菌的序列,需要设置成细菌对应的Genetic Code used (-c 11)。其他物种同理,默认的是The Standard Code (-c 1)
运行之后发现使用ParaAT计算kaks速度非常慢,查阅资料发现Kaks_calculator 默认会将所有的就算方法得到的结果取平均值,大大减低了计算速度,所以先使用ParaAT获得Kaks_calculator需要的文件再选定方法进行计算
for i in `cat ./list/list00`
do
ParaAT.pl -h ./blastp/${i}.select.id -n ./cds/${i}_new.cds -a ./pep/${i}_new.pep -p proc -m muscle -f axt -g -o ./axt/${i}
done
#proc文件必须与输出位置在同一个目录下,不然会报错
for a in `cat list/list00`
do
mkdir ./kaks/${a}
for i in `ls ./axt/${a}`
do
KaKs_Calculator -i ./axt/${a}/${i} -o ./kaks/${a}/${i}.kaks -m YN
done
done
这样就能获得需要的kaks数据。
网友评论