Bio-ASN1-EntrezGene
view release on metacpan or search on metacpan
examples/parse_entrez_gene_example.pl view on Meta::CPAN
}
}
if($genestart && $geneend)
{
# user can decide how to store
}
# tracking info about how this gene has changed
if(safeval($seq, '{track-info}->[0]->{current-id}'))
{
my (@ids, $newegid, $newllid);
foreach my $id (@{$seq->{'track-info'}->[0]->{'current-id'}})
{
my $tmpid = safeval($id, '{tag}->[0]->{id}');
push(@ids, "$id->{db}:$tmpid");
$newegid = $tmpid if($id->{db} =~ /^GeneID$/i);
$newllid = $tmpid if($id->{db} =~ /^LocusID$/i);
}
my $comment = "Gene moved: current IDs are: " . join(' ; ', @ids);
}
return $llgene;
}
# safely assign a value to $data->{$key} ($data must be hash)
sub safeassign
lib/Bio/SeqIO/entrezgene.pm view on Meta::CPAN
The C<-debug> and C<-locuslink> options slow down the parser.
Example code which looks for ontology terms:
my $eio = new Bio::SeqIO(-file => $file,
-format => 'entrezgene',
-service_record => 'yes');
while (my $seq = $eio->next_seq) {
my $gid = $seq->accession_number;
foreach my $ot ($ann->get_Annotations('OntologyTerm')) {
next if ($ot->term->authority eq 'STS marker'); # No STS markers
my $evid = $ot->comment;
$evid =~ s/evidence: //i;
my @ref = $ot->term->get_references;
my $id = $ot->identifier;
my $fid = 'GO:' . sprintf("%07u",$id);
print join("\t",$gid, $ot->ontology->name, $ot->name, $evid,
$fid, @ref?$ref[0]->medline:''), "\n";
}
}
=head1 _process_products_coordinates
To do:
=head1 _process_prop
( run in 1.834 second using v1.01-cache-2.11-cpan-5735350b133 )