搜索
查看: 1343|回复: 8

【Panda姐-perl练习题3】从gbk文件中提取蛋白序列

[复制链接]

50

主题

88

帖子

651

积分

版主

Rank: 7Rank: 7Rank: 7

积分
651
QQ
发表于 2016-8-28 15:21:42 | 显示全部楼层 |阅读模式
本帖最后由 Panda姐 于 2016-8-30 19:02 编辑

题目:
写脚本,从 gbk 文件格式(NC_010475.gbk )中提取含蛋白序列的 fasta 文件。
解题思路:
利用正则和标签来匹配获取目标序列。
代码记录:
[Perl] 纯文本查看 复制代码
#! usr/bin/perl 
use strict;
my $num;
open GBK,'NC_010475.gbk';
open OUTPUT,">protine.fa";
my($gbk,@gbk,$t,$tag);
@gbk=<GBK>;
foreach $gbk(@gbk){
    chomp($gbk);
    if($gbk=~/\/locus_tag=\"(\S+)\"/){
    $tag=$1;
    }
    if($gbk=~/\/translation=\"(\S+)\"/){
    print OUTPUT">$tag\n$1\n";
    next;
    }elsif($gbk=~/\/translation="(\S+)/){
    print OUTPUT">$tag\n$1";
    $t=1;
    next;
    }
    if($gbk=~/([A-Z]{50,65})$/){
    print OUTPUT"$1";
    }
    if($t==1){
    if($gbk=~/([A-Z]+)\"/){
    print OUTPUT "$1\n";
    $t=0;
    }
    }
   } 

小记:
1.参考师兄的代码修改完成的;
2.用正则表达式进行匹配的锚位,字符串结尾锚位$;





上一篇:【Panda姐-perl练习题2】找出两条序列的最长共有序列
下一篇:【Panda姐-perl练习题4】统计给定序列在基因组上出现的次数
回复

使用道具 举报

10

主题

50

帖子

219

积分

中级会员

Rank: 3Rank: 3

积分
219
QQ
发表于 2016-10-9 10:31:26 | 显示全部楼层
楼主:
if($gbk=~/([A-Z]{50,65})$/){
    print OUTPUT"$1";
    }
这个是不是可以不要,在下一个if中:
if($gbk=~/([A-Z]+)\"/) 改为 if($gbk=~/([A-Z]+)\"?/)
可以吗?
苛求远离完美
回复 支持 反对

使用道具 举报

10

主题

50

帖子

219

积分

中级会员

Rank: 3Rank: 3

积分
219
QQ
发表于 2016-10-9 10:33:54 | 显示全部楼层
还有 其中的 next是不是可以省略掉,因为if如果匹配正确就不会进行一次匹配了吧?
苛求远离完美
回复 支持 反对

使用道具 举报

50

主题

88

帖子

651

积分

版主

Rank: 7Rank: 7Rank: 7

积分
651
QQ
 楼主| 发表于 2016-10-9 20:03:55 | 显示全部楼层
惠真-市二医院 发表于 2016-10-9 10:33
还有 其中的 next是不是可以省略掉,因为if如果匹配正确就不会进行一次匹配了吧? ...

你可以尝试一下
回复 支持 反对

使用道具 举报

5

主题

32

帖子

342

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
342
发表于 2017-2-20 19:44:25 | 显示全部楼层
NC_010475.gbk从哪里下载?
回复 支持 反对

使用道具 举报

1

主题

15

帖子

90

积分

注册会员

Rank: 2

积分
90
发表于 2017-7-17 17:01:26 | 显示全部楼层
请问文件在哪里可以下载呢!
回复 支持 反对

使用道具 举报

50

主题

88

帖子

651

积分

版主

Rank: 7Rank: 7Rank: 7

积分
651
QQ
 楼主| 发表于 2017-7-17 17:02:56 | 显示全部楼层
小森 发表于 2017-7-17 17:01
请问文件在哪里可以下载呢!

你自己可以去下个gbk文件呀
回复 支持 反对

使用道具 举报

1

主题

15

帖子

90

积分

注册会员

Rank: 2

积分
90
发表于 2017-7-17 17:26:34 | 显示全部楼层
Panda姐 发表于 2017-7-17 17:02
你自己可以去下个gbk文件呀

不是,我主要是不知道这种文件从哪里下载,百度了也没找到..
回复 支持 反对

使用道具 举报

0

主题

1

帖子

73

积分

注册会员

Rank: 2

积分
73
发表于 2017-8-11 10:13:27 | 显示全部楼层
小森 发表于 2017-7-17 17:26
不是,我主要是不知道这种文件从哪里下载,百度了也没找到..

这是genebank的文件上NCBI就可以下载
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|手机版|小黑屋|生信技能树    

GMT+8, 2017-10-20 03:59 , Processed in 0.113488 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.