KaKs_calculator_3.0计算选择压力ka ks
1个回答
展开全部
安装KaKs_Calculator3
KaKs_Calculator3的下载地址为:ngdc.cncb.ac.cn/biocode...
解压后,需要添加环境变量
安装ParaAT
ParaAT的下载地址为:ngdc.cncb.ac.cn/biocode...
ParaAT是一个整合工具,可以调用比对工具和KaKs
ParaAT.pl脚本较老,没有更新到适应KaKs_Calculator3,并且在使用muscle作为比对软件时需要muscle3,muscle v5的输入命令不适合
我一般将旧版muscle重新命名muscle3,因此我对ParaAT.pl做了以下修改:
line 136:
line 798:
line 732:解决同源簇中多个基因导致文件名过长的问题:
只取同源簇前两个基因名作为文件名(默认是全部基因名连接成文件名,很长!!!!)
准备输入文件开始分析实际操作中的问题(十分重要):
1、在多基因同源簇计算时,直接使用ParaAT.pl -f axt -g -k参数调用kaks计算会直接将全部基因序列链接,软件则会认为是双基因比对,直接按照总长度除以2来计算长度。因此,在总长度为奇数时报错:Error. The size of two sequences in 'gene1&gene2' is not equal。就算不报错也是计算错误。因此,采用 -format clustal输出格式,然后使用KaKs_Calculator3自带的AXTConvertor转换成axt格式。此时得到的axt文件便是每对同源基因的分开结果,软件能够正确识别长度。
2、使用KaKs_Calculator3计算前需要使用cd-hit(参数:cd-hit -c 1 -d 0)将同源簇中的基因去重,否则KaKs_Calculator3计算缓慢,只要比对上区域一致性100%都会导致计算缓慢(速度可以相差200x),且重复的序列间本身不存在替换无结果,最终的ka,ks均为NA。因此cd-hit聚类时不需要限定覆盖度参数(-aL 1-aS 1)
3、如果将同一个同源簇的多个基因序列多序列比对,成一个multi-fasta文件,此时的序列比对是全局最优比对,但是任意一对同源基因却不一定是最优比对。因此,建议使用基因对比对结果,而不是多序列比对结果。所以在计算kaks之前,将同源簇中的多个基因转换成基因对形式,然后计算kaks。最后根据同源关系合并统计。此种方法结果较为准确,且不会出现not equal或者not code alignment的报错。
4、提供的序列文件CDS_file、protein_file的fasta文件需要序列ID行仅有ID不能有其他描述信息:
一个实际脚本:
将同源簇拆成基因对的脚本kaks_revision_para.py:
同源簇文件和序列文件来自于panaroo泛基因组结果
KaKs_Calculator3的下载地址为:ngdc.cncb.ac.cn/biocode...
解压后,需要添加环境变量
安装ParaAT
ParaAT的下载地址为:ngdc.cncb.ac.cn/biocode...
ParaAT是一个整合工具,可以调用比对工具和KaKs
ParaAT.pl脚本较老,没有更新到适应KaKs_Calculator3,并且在使用muscle作为比对软件时需要muscle3,muscle v5的输入命令不适合
我一般将旧版muscle重新命名muscle3,因此我对ParaAT.pl做了以下修改:
line 136:
line 798:
line 732:解决同源簇中多个基因导致文件名过长的问题:
只取同源簇前两个基因名作为文件名(默认是全部基因名连接成文件名,很长!!!!)
准备输入文件开始分析实际操作中的问题(十分重要):
1、在多基因同源簇计算时,直接使用ParaAT.pl -f axt -g -k参数调用kaks计算会直接将全部基因序列链接,软件则会认为是双基因比对,直接按照总长度除以2来计算长度。因此,在总长度为奇数时报错:Error. The size of two sequences in 'gene1&gene2' is not equal。就算不报错也是计算错误。因此,采用 -format clustal输出格式,然后使用KaKs_Calculator3自带的AXTConvertor转换成axt格式。此时得到的axt文件便是每对同源基因的分开结果,软件能够正确识别长度。
2、使用KaKs_Calculator3计算前需要使用cd-hit(参数:cd-hit -c 1 -d 0)将同源簇中的基因去重,否则KaKs_Calculator3计算缓慢,只要比对上区域一致性100%都会导致计算缓慢(速度可以相差200x),且重复的序列间本身不存在替换无结果,最终的ka,ks均为NA。因此cd-hit聚类时不需要限定覆盖度参数(-aL 1-aS 1)
3、如果将同一个同源簇的多个基因序列多序列比对,成一个multi-fasta文件,此时的序列比对是全局最优比对,但是任意一对同源基因却不一定是最优比对。因此,建议使用基因对比对结果,而不是多序列比对结果。所以在计算kaks之前,将同源簇中的多个基因转换成基因对形式,然后计算kaks。最后根据同源关系合并统计。此种方法结果较为准确,且不会出现not equal或者not code alignment的报错。
4、提供的序列文件CDS_file、protein_file的fasta文件需要序列ID行仅有ID不能有其他描述信息:
一个实际脚本:
将同源簇拆成基因对的脚本kaks_revision_para.py:
同源簇文件和序列文件来自于panaroo泛基因组结果
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询