[Bioperl-l] Entrez Gene parser questions

Law, Annie Annie.Law at nrc-cnrc.gc.ca
Wed Jun 8 11:40:24 EDT 2005


Hi, 

I went to bioperl-live and copied the newest entrezgene.pm and Bio::AnnotatableI, Bio::SeqFeatureI modules and
I got the following output (same output with entrezgene.pm saved on May 11 as well).  The complaint about the module 
Generic.pm is gone now.
I am using EntrezGene V 1.09 picked up from CPAN.

I'm not sure what is wrong.  I guess I could delete the Bio/ASN1 directory and install EntrezGene V.1.07 but that is not supposed to make a difference?
Here's a wild stab but are the additional messages related to a statement I read somewhere about the first record being empty?

Is my next alternative to install Bioperl 1.5 and try again? If so, am I correct in thinking that to 'uninstall' there is no such
Uninstall command but I would just delete the /usr/lib/perl5/site_perl/5.8.0/Bio  ie. The Bio directory and then
Use CPAN to install bioperl 1.5

Thanks so much,
Annie.


Argument "-trimopt" isn't numeric in numeric eq (==) at /usr/lib/perl5/site_perl/5.8.0/Bio/ASN1/EntrezGene.pm line 450.
Pseudo-hashes are deprecated at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 416.
Use of uninitialized value in string eq at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 543.
Use of uninitialized value in string eq at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 554.
Use of uninitialized value in substitution (s///) at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 555.
Use of uninitialized value in string eq at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 554.
Use of uninitialized value in substitution (s///) at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 555.
Pseudo-hashes are deprecated at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 416.
Use of uninitialized value in string eq at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 604.
Use of uninitialized value in string eq at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 604.
Use of uninitialized value in string eq at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 604.
Use of uninitialized value in string eq at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 295.
Use of uninitialized value in string eq at /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 323.


-----Original Message-----
From: Stefan Kirov [mailto:skirov at utk.edu] 
Sent: Tuesday, June 07, 2005 8:39 PM
To: Mingyi Liu
Cc: Law, Annie; Bioperl list
Subject: Re: [Bioperl-l] Entrez Gene parser questions


I am pretty sure it is the old Bio::SeqFeature::Generic that breaks the 
code (actually the underlying modules I mentioned...).
Thanks for the -file option... There are also some leftover commenst :-) 
. I need to clean the code a bit...
Stefan

Mingyi Liu wrote:

> Hi, Annie
>
> Annie must've been using the Bio::ASN1::EntrezGene V1.09, which worked
> fine with your entrezgene.pm in bioperl-live at least a couple days 
> ago, when I replied to Annie.  V1.09 also did not have any significant 
> changes in parser code vs. 1.07.
>
> I guess it has something to do with V1.4 since the sample script you
> used below runs perfectly fine on my Bioperl 1.5 + entrezgene.pm.  The 
> procedure you used was also correct (there's no need to 'use 
> Bio::ASN1::EntrezGene;' though).  Try follow Stefan's suggestion first 
> (although I don't quite understand why Bio::ASN1::EntrezGene 
> complained about non numerica operon, which can only result from 
> incorrect calling of the function.  But Stefan's entrezgene was using 
> correct calling and it runs perfectly for me.  I was using 
> entrezgene.pm CVS version 1.9.
>
> Keep us posted on your progress.
>
> BTW, Stefan, you could call Bio::ASN1::EntrezGene with either '-file'
> (bioperl style) or 'file' (I allowed both when I implemented this 
> switch I think. I usually just use file, which might explain your note 
> in the comment in your script.  I just noticed the comment.
>
> Mingyi
>
> Stefan Kirov wrote:
>
>> Hi Annie,
>> Few more things to update:
>> Bio::AnnotatableI and Bio::SeqFeatureI.  I believe this is the reason
>> your script does not work. Update also Bio::SeqIO::entrezegene- I 
>> added some fixed so you will not see those nasty warning when using 
>> strict (nothing critical though).
>> I am not sure we have the same versions for Bio::ASN1::EntrezGene. I 
>> have 1.0.7. Where did you get it from (maybe mine is older)?
>> Stefan
>>
>> Law, Annie wrote:
>>
>>> Hi,
>>>
>>> Thanks for all of the replies.
>>> I am using bioperl 1.4 and I have done the following:
>>> 1. installed  Bio::ASN1::EnztrezGene (using perl Makefile.PL, make,
>>> make test, make install)
>>> 2. got a copy of the entrezgene.pm from bioperl-live and put it in 
>>> the Bio/SeqIO directory
>>> 3. copied the Bio::Annotation::DBLink DBLink.pm file and put them in 
>>> the corresponding directory
>>> 4. the Bio::Cluster::SequenceFamily file was already up to date
>>> 5. also have all the most recent bioperl-live Bio::SeqFeature::Gene 
>>> modules
>>>
>>> I grabbed the ASN file from
>>> ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/ASN/Mammalia/
>>>
>>> I then wrote a simple perl script which includes:
>>>
>>> #!/usr/bin/perl -w
>>>
>>> use strict;
>>> use Bio::ASN1::EntrezGene;
>>> use Bio::SeqIO;
>>> use Bio::Annotation::DBLink;
>>> use Bio::Cluster::SequenceFamily;
>>>
>>> my $file = '/var/lib/mysql/Homo_sapiens';
>>>
>>> my $seqio = Bio::SeqIO->new(-format => 'entrezgene',
>>>                               -file => $file,
>>>                               -debug => 'on');
>>>
>>> my ($gene,$genestructure,$uncaptured) = $seqio->next_seq;
>>>
>>> After I run this script I get the following errors:
>>>
>>> Useless use of hash element in void context at
>>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 317.
>>>
>>> Argument "-trimopt" isn't numeric in numeric eq (==) at
>>> /usr/lib/perl5/site_perl/5.8.0/Bio/ASN1/EntrezGene.pm line 450.
>>>
>>> Pseudo-hashes are deprecated at
>>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 148.
>>>
>>> Use of uninitialized value in string ne at
>>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 150.
>>>
>>> Pseudo-hashes are deprecated at
>>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqIO/entrezgene.pm line 416.
>>>
>>> Can't locate object method "add_tag_value" via package
>>> "Bio::SeqFeature::Generic" at 
>>> /usr/lib/perl5/site_perl/5.8.0/Bio/SeqFeature/Generic.pm line 234.
>>>
>>> I'm not sure what I am missing?
>>>
>>> Thanks so much,
>>> Annie.
>>
>>
>
>


More information about the Bioperl-l mailing list