| 查看: 2806 | 回复: 21 | ||
[求助]
本地化blast注释后,想从结果中的Subject Seq-id得到Nr-annotation,求大神指导。已有1人参与
|
» 本主题相关价值贴推荐,对您同样有帮助:
生物学软件介绍及其下载地址【学生物的会很有用】
已经有24人回复
peterrjp
铁杆木虫 (著名写手)
- 应助: 65 (初中生)
- 金币: 24487.5
- 红花: 16
- 帖子: 2608
- 在线: 67小时
- 虫号: 395640
- 注册: 2007-06-08
- 性别: GG
- 专业: 微生物生态学
2楼2014-10-21 18:05:07
3楼2014-10-21 19:22:07
peterrjp
铁杆木虫 (著名写手)
- 应助: 65 (初中生)
- 金币: 24487.5
- 红花: 16
- 帖子: 2608
- 在线: 67小时
- 虫号: 395640
- 注册: 2007-06-08
- 性别: GG
- 专业: 微生物生态学
【答案】应助回帖
★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
大爷给跪了: 金币+20, ★★★★★最佳答案 2014-10-21 20:05:45
大爷给跪了: 金币+20, ★★★★★最佳答案 2014-10-21 20:05:45
|
代码如下,请粘贴到空白文档,保存成.pl文件 用法:假设你的第一个文件是11111111.txt(你的图1), 第二个文件是nr.txt(你的图2),双击pl脚本,产生的include.txt就是你要的结果,可以用excel打开,自动会分成两列,第一列gi编号,第二列是编码蛋白名称 #!/usr/bin/perl my $list_file="11111111.txt"; # 输入文件1 my $tb_file="nr.txt"; # 输入文件2 my ($ll,%gi1,@f); open INCLUDE, ">include.txt" || die "Can't open include.txt"; open TMP, $list_file || die "Can't open $list_file"; while($ll = <TMP> {@f=split/\|/,$ll; $gi1{$f[1]} = 1; } close(TMP); open(TMP, $tb_file) || die; while($ll = <TMP> {chomp $ll; @f=split/\|/,$ll; if ($gi1{$f[1]}){ print INCLUDE "$f[1]\t$f[4]\n"; } } close TMP; close INCLUDE; |
» 本帖已获得的红花(最新10朵)
4楼2014-10-21 19:40:34
5楼2014-10-21 19:53:36
peterrjp
铁杆木虫 (著名写手)
- 应助: 65 (初中生)
- 金币: 24487.5
- 红花: 16
- 帖子: 2608
- 在线: 67小时
- 虫号: 395640
- 注册: 2007-06-08
- 性别: GG
- 专业: 微生物生态学
6楼2014-10-21 19:55:18
7楼2014-10-21 20:05:06
|
大神 结果不对啊 24417280 unknown [Arabidopsis thaliana] 15234745 UDP-D-glucuronate 4-epimerase 1 [Arabidopsis thaliana]gi 15234486 UDP-D-glucuronate 4-epimerase 5 [Arabidopsis thaliana]gi 15293119 putative nucleotide sugar epimerase [Arabidopsis thaliana] 21536982 nucleotide sugar epimerase, putative [Arabidopsis thaliana] 37781356 nematode resistance-like protein [Solanum tuberosum] 而且数量也不对 |
8楼2014-10-21 21:12:41
|
txt中原数据是: gi|571510024|ref|XP_006596207.1| gi|571465848|ref|XP_006583492.1| gi|357514699|ref|XP_003627638.1| gi|657373209|gb|KEH18959.1| gi|357514703|ref|XP_003627640.1| gi|657372565|gb|AET01655.2| gi|571474956|ref|XP_006586404.1| gi|357513781|ref|XP_003627179.1| gi|358344433|ref|XP_003636294.1| gi|357518219|ref|XP_003629398.1| gi|358345567|ref|XP_003636848.1| gi|358343944|ref|XP_003636055.1| gi|358343904|ref|XP_003636035.1| |
9楼2014-10-21 21:16:39
peterrjp
铁杆木虫 (著名写手)
- 应助: 65 (初中生)
- 金币: 24487.5
- 红花: 16
- 帖子: 2608
- 在线: 67小时
- 虫号: 395640
- 注册: 2007-06-08
- 性别: GG
- 专业: 微生物生态学
|
那个脚本是利用|符号来分割每行数据的,对于你的文件2,脚本会取出分割后的第2(gi号)和第5个(蛋白名称)区段放进输出结果里 如果要正常运行,必须确保这个规则是适用于每一行。你多贴一些文件2的内容出来看看吧(比如那些你认为脚本运行出错了的行)。或者把两个文件发我邮箱caueducn@yeah.net 还有个很重要的规则是,你要确保文件1的gi号都是唯一的;如果gi号不是唯一,或者在文件2并不包含文件1的全部gi号,那么出来的结果就会少一些。 |
10楼2014-10-21 21:25:14













回复此楼
zhouyanli11
{