Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我该如何解开这个与BioPerl有关的谜团?_Perl_Bioperl - Fatal编程技术网

我该如何解开这个与BioPerl有关的谜团?

我该如何解开这个与BioPerl有关的谜团?,perl,bioperl,Perl,Bioperl,我正在使用Ubuntu 10.04和Perl 5.10.1。BioPerl包有一些很好的脚本,例如bp_genbank2gff3.pl,它将文件从genbank格式转换为GFF3格式 问题:当使用bp_genbank2gff3.pl时,我得到了意想不到的结果:基因特征在最后一列GFF3中得到了“Name=”而不是“locus_tag=” 一位亲爱的BioPerl邮件列表成员告诉我,他使用了BioPerl存储库中最新的BioPerl版本,并得到了正确的结果(“locus_tag=”)。我得到了一份

我正在使用Ubuntu 10.04和Perl 5.10.1。BioPerl包有一些很好的脚本,例如bp_genbank2gff3.pl,它将文件从genbank格式转换为GFF3格式

问题:当使用bp_genbank2gff3.pl时,我得到了意想不到的结果:基因特征在最后一列GFF3中得到了“Name=”而不是“locus_tag=”

一位亲爱的BioPerl邮件列表成员告诉我,他使用了BioPerl存储库中最新的BioPerl版本,并得到了正确的结果(“locus_tag=”)。我得到了一份新的,但对我不起作用。奇怪

重新创建情况的步骤:

$ cd ~/src
$ git clone http://github.com/bioperl/bioperl-live.git
$ export PERL5LIB="$HOME/src/bioperl-live:$PERL5LIB"
$ cd /tmp
$ wget ftp://ftp.ncbi.nih.gov/genomes/Bacteria/Escherichia_coli_E24377A/NC_009789.gbk
$ ~/src/bioperl-live/scripts/Bio-DB-GFF/genbank2gff3.PLS NC_009789.gbk
以下是我的计算结果GFF3的第8行:

NC_009789    GenBank    gene    665    781    .    -    1    ID=EcE24377A_B0001;Dbxref=GeneID:5585816;Name=EcE24377A_B0001
虽然这与我同事的结果是一样的:

NC_009789    GenBank    gene    665    781    .    -    1    ID=EcE24377A_B0001;Dbxref=GeneID:5585816;**locus_tag**=EcE24377A_B0001
请注意,我的版本中的“Name=”标记(在行的末尾)替换为我同事版本中的“locus\u tag=”标记 我不知道这里发生了什么。。。相同的输入,大概相同的脚本,但不同的输出(我的同事得到的输出是理想的)。我们甚至对相同的脚本(
genbank2gff3.PLS
)进行了区分

有什么想法吗? 有人能看看他是否得到了与我或我同事相同的结果吗?

看看:

中,将\u转换为\u名称

elsif ($g->has_tag('locus_tag')) {
    ($gene_id) = $g->get_tag_values('locus_tag');
    $g->remove_tag('locus_tag');
    $g->add_tag_value('Name', $gene_id);
}

所以看起来脚本正在做它应该做的事情?

脚本应该做的事情是有争议的。我认为它应该包括一个“轨迹标记”,如果存在的话。当我想要求添加此功能时,整个事情就开始了,当bioperl的编码人员告诉我他已经是这样了(即显示轨迹标记).问题是谁弄错了…我只是想确定这不是我身边的什么奇怪的事..............................没关系.我只希望我对BioPerl pkg了解得更多
elsif ($g->has_tag('locus_tag')) {
    ($gene_id) = $g->get_tag_values('locus_tag');
    $g->remove_tag('locus_tag');
    $g->add_tag_value('Name', $gene_id);
}