muscle多序列比对简单应用

本文分享了使用Muscle进行多序列比对的方法,包括处理大数据集时遇到的问题及解决方案,如何将比对结果转换为ClustalW格式并用Python进行合并,以及基于比对结果构建UPGMA树的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

没有深入研究,只想对多序列做个比对,然后分组,具体命令如下:

1、多序列比对(数据量不大,曾经用了一个挺大的,直接吐核,放弃了,网上有说多线程操作,没有用,照例吐)

muscle -in seqs.fa -out seqs.afa

 

对于大数据集可以使用(我用了,直接报错,不知道咋回事,希望能有成功的宝宝)

 muscle -in seqs.fa -out seqs.afa -maxiters 2

2、序列转变为clustalw格式

muscle -in seq.afa -clw  -out seq.clw

因为clw文件是分段显示的,我用python做了合并,输出整体序列比对结果(很不幸,这次比对不太好,我大概要弃了muscle,试下cd-hit,实在不行还得后续想办法,哭泣。。。)

import json
dict={}
with open('seq.clw','r')as js:
    for line in js.readlines():
        print(line)
        if line.isspace():
            continue
        else:
            s=line.split( )
            print(s)
            if s[0] in dict.keys():
                dict[s[0]]=dict[s[0]]+s[1]
            else:
                dic={s[0]:s[1]}
                dict.update(dic)
js.close()
filew=open('catclw.clw','w')
for key in dict.keys():
    filew.write(key+" "+dict[key]+"\n")
filew.close()



 

3、根据多重比对结果构建UPGMA树

 

muscle -maketree -in seqs.afa -out seqs.phy

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值