搜索
查看: 2378|回复: 12

[coding] 如何提取序列的长度并放倒blastx结果中的第二列

[复制链接]

17

主题

42

帖子

268

积分

中级会员

Rank: 3Rank: 3

积分
268
发表于 2017-9-7 22:09:11 | 显示全部楼层 |阅读模式
我有一个blastsx的结果文件,其中从左往右数第一列是序列的ID号,然后有另外一个文件是序列文件里面有序列ID和相应的序列。请问如何根据blastx文件里的ID号找出序列文件里的对应的序列并计算出相应序列的长度,然后把对应的长度数值放到blastx文件的第二列,让每个ID后面都显示其对应序列的长度。想知道用python如何实现

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

4

主题

56

帖子

535

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
535
发表于 2017-9-7 23:37:41 | 显示全部楼层
python不习惯,perl你不要算了
回复 支持 反对

使用道具 举报

0

主题

17

帖子

123

积分

注册会员

Rank: 2

积分
123
发表于 2017-9-11 16:35:45 | 显示全部楼层
本帖最后由 alienzj 于 2017-9-11 20:06 编辑

[Python] 纯文本查看 复制代码
from Bio import SeqIO

id_len = {}
id_len = {seq_rec.id: len(seq_rec) for seq_rec in SeqIO.parse("query.fa", "fasta")}

with open("./out/blast.outfmt6", 'r') as handle:
        for line in handle:
                blast_record = line.strip().split("\t", maxsplit = 1)
                print(blast_record[0], "\t", id_len[blast_record[0]], "\t", blast_record[1])
回复 支持 反对

使用道具 举报

0

主题

17

帖子

123

积分

注册会员

Rank: 2

积分
123
发表于 2017-9-11 16:37:24 | 显示全部楼层
论坛输入验证码好难用
回复 支持 反对

使用道具 举报

0

主题

17

帖子

123

积分

注册会员

Rank: 2

积分
123
发表于 2017-9-11 20:03:10 | 显示全部楼层
本帖最后由 alienzj 于 2017-9-11 20:06 编辑

回复

使用道具 举报

17

主题

42

帖子

268

积分

中级会员

Rank: 3Rank: 3

积分
268
 楼主| 发表于 2017-9-11 20:50:11 | 显示全部楼层
回复 支持 反对

使用道具 举报

17

主题

42

帖子

268

积分

中级会员

Rank: 3Rank: 3

积分
268
 楼主| 发表于 2017-9-12 14:55:40 | 显示全部楼层

我在服务器上用conda安装了biopython,不知道为什么一直出错,求大神帮帮忙。这里图片发不出来
回复 支持 反对

使用道具 举报

17

主题

42

帖子

268

积分

中级会员

Rank: 3Rank: 3

积分
268
 楼主| 发表于 2017-9-12 19:09:19 | 显示全部楼层

你这个脚本输出好像错误呀
回复 支持 反对

使用道具 举报

0

主题

17

帖子

123

积分

注册会员

Rank: 2

积分
123
发表于 2017-9-13 10:08:55 | 显示全部楼层
Andy123 发表于 2017-9-12 14:55
我在服务器上用conda安装了biopython,不知道为什么一直出错,求大神帮帮忙。这里图片发不出来 ...

怎么帮?
回复 支持 反对

使用道具 举报

0

主题

17

帖子

123

积分

注册会员

Rank: 2

积分
123
发表于 2017-9-13 10:11:13 | 显示全部楼层
Andy123 发表于 2017-9-12 19:09
你这个脚本输出好像错误呀

具体错在哪里呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树 ( 粤ICP备15016384号  

GMT+8, 2019-7-24 09:12 , Processed in 0.048019 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.