[Bioperl-l] parsing blast results
Chris Fields
cjfields at uiuc.edu
Tue Feb 27 14:11:37 UTC 2007
On Feb 27, 2007, at 7:26 AM, Luba Pardo wrote:
> Hi,
> I am using the module Bio::SearchIO to parse some blast results. I
> would
> like to store the ids of the results into an array but I am not
> sure if this
> is possible to do it with an existing subroutine. Does anyone have
> an idea
> whether there is a method included within the module Bio::SearchIO
> to do so?
> Thanks in advance,
> L.Pardo
Bio::SearchIO doesn't currently have a method to retrieve all the
accessions in a BLAST result. The best way to do this is to iterate
through the objects:
my @accs;
while (my $result = $searchio->next_result) {
while (my $hit = $result->next_hit) {
push @accs, $hit->accession;
# do whatever else here...
}
}
print join ',', @accs;
I don't think all accessions in the description are parsed out at the
moment, just the first one (or the one in the hit table). If you
want all of them or if you want the NCBI GI you'll need to parse them
out of the description heading ($hit->description).
chris
More information about the Bioperl-l
mailing list