首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BioPerl:提取CDS错误

BioPerl:提取CDS错误
EN

Stack Overflow用户
提问于 2014-10-23 08:44:28
回答 1查看 245关注 0票数 0

我试图从GenBank文件中提取CDS和相应的氨基酸序列,使用BioPerl。脚本如下所示:

代码语言:javascript
复制
while (my $seq_object = $in->next_seq){
for my $feat_object ($seq_object->get_SeqFeatures) {
    if ($feat_object ->primary_tag eq "CDS") {
    #   warn("all tags are ", join ("," , $feat_object->get_all_tags),"\n");        
        if ($feat_object->has_tag ("protein_id")){
            my ($protein_id) = $feat_object->get_tag_values('protein_id');
            my ($pseq) = $feat_object->get_tag_values('translation') ;
            my ($pepseq) = Bio::Seq->new(-id => $protein_id , -description => $seq_object -> accession_number,
                -seq => $pseq);
            $out->write_seq($pepseq);   
        }
    }
}

}

我收到的错误消息是:文件句柄GEN1仅在/Library/Perl/5.12/Bio/Root/IO.pm第533行第148行打开供输入。

请帮我解决这个问题。

提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-24 17:56:50

我将添加这个作为一个答案,因为它很可能是错误的来源。在为输出创建Bio::SeqIO对象时,必须遵循open的常规Perl规则,并指定用于输出的文件。因此,请尝试以下几点:

代码语言:javascript
复制
my $out = Bio::SeqIO->new( -file => ">Oct_test.fasta", -format => 'fasta');

这是一件很容易忘记的事情,错误信息可能会更具有描述性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26524356

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档