[Bioperl-l] Bioperl-l Digest, Vol 71, Issue 15
Govind Chandra
govind.chandra at bbsrc.ac.uk
Fri Mar 27 11:26:02 EDT 2009
Hi,
The code below
====== code begins =======
#use strict;
use Bio::SeqIO;
$infile='NC_000913.gbk';
my $seqio=Bio::SeqIO->new(-file => $infile);
my $seqobj=$seqio->next_seq();
my @features=$seqobj->all_SeqFeatures();
my $count=0;
foreach my $feature (@features) {
unless($feature->primary_tag() eq 'CDS') {next;}
print($feature->start()," ", $feature->end(), " ",$feature->strand(),"\n");
$ac=$feature->annotation();
$temp1=$ac->get_Annotations("locus_tag");
@temp2=$ac->get_Annotations();
print("$temp1 $temp2[0] @temp2\n");
if($count++ > 5) {last;}
}
print(ref($ac),"\n");
exit;
======= code ends ========
produces the output
========== output begins ========
190 255 1
0
337 2799 1
0
2801 3733 1
0
3734 5020 1
0
5234 5530 1
0
5683 6459 -1
0
6529 7959 -1
0
Bio::Annotation::Collection
=========== output ends ==========
$ac is-a Bio::Annotation::Collection but does not actually contain any
annotation from the feature. Is this how it should be? I cannot figure
out what is wrong with the script. Earlier I used to use has_tag(),
get_tag_values() etc. but the documentation says these are deprecated.
Perl is 5.8.8. BioPerl version is 1.6 (installed today). Output of uname
-a is
Linux n61347 2.6.18-92.1.6.el5 #1 SMP Fri Jun 20 02:36:06 EDT 2008
x86_64 x86_64 x86_64 GNU/Linux
Thanks in advance for any help.
Govind
More information about the Bioperl-l
mailing list