[Bioperl-l] Finding all human paralogues

Yuval Itan y.itan at ucl.ac.uk
Thu Mar 16 20:19:36 UTC 2006


Dear Torsten,

I have followed your suggestions, and would be truly grateful for one more 
hint.
I have updated the $PATH to include the directory of my Blast binaries. I have 
also made a .ncbirc file which includes the path to the fasta file I have 
downloaded (all human peptides):

[NCBI]
Data="/home/Yuval/Applications/blast/data/"

But when I am trying to run one sequence against the human peptides fasta 
file, I get the following error message:

linux:/home/Yuval # perl test5
[blastall] WARNING: test: Unable to open Homo_sapiens.NCBI354.feb.pep.fa.pin

------------- EXCEPTION  -------------
MSG: blastall call crashed: 256 /home/Yuval/Applications/blast/bin/blastall -p  
blastp  -d  /Homo_sapiens.NCBI354.feb.pep.fa  -i  /tmp/nvkaUCJjDq  
-o  /tmp/klP53IHZKj

STACK 
Bio::Tools::Run::StandAloneBlast::_runblast /home/Yuval/bioperl-live/Bio/Tools/Run/StandAloneBlast.pm:633
STACK 
Bio::Tools::Run::StandAloneBlast::_generic_local_blast /home/Yuval/bioperl-live/Bio/Tools/Run/StandAloneBlast.pm:602
STACK 
Bio::Tools::Run::StandAloneBlast::blastall /home/Yuval/bioperl-live/Bio/Tools/Run/StandAloneBlast.pm:489
STACK toplevel test5:72

--------------------------------------

I would be grateful for any hint. These are the relevant lines of the code:

my $i = 0; #for the first sequence in human database

my $seq1 = $human_genes->[$i]->get_longest_peptide_Member()->sequence;

my @params = (program  => 'blastp', database => 
'Homo_sapiens.NCBI354.feb.pep.fa', _READMETHOD => 'SearchIO' );
my $blast_obj = Bio::Tools::Run::StandAloneBlast->new(@params);
my $seq_obj = Bio::Seq->new(-id  =>"test query", -seq =>$seq1);
my $report_obj = $blast_obj->blastall($seq_obj);
my $result_obj = $report_obj->next_result;
print $result_obj->num_hits;
 
Many thanks for everything.

Yuval

On Wednesday 15 March 2006 01:52, you wrote:
> Yuval,
>
> > -------------------- WARNING ---------------------
> > MSG: cannot find path to blastall
> > ---------------------------------------------------
> > Can you suggest how to solve that?
>
> Have you installed the blast binaries?
> Are they in your $PATH?
> Have you created a $HOME/.ncbirc file?
>
> Please read http://www.ncbi.nlm.nih.gov/blast/docs/
> and http://doc.bioperl.org/bioperl-live/Bio/Tools/Run/StandAloneBlast.html
>
> > Also, I would like to have the Blastp function inside my own programme.
> > Is there any available source code for that?
>
> BLAST is part of the NCBI toolkit:
> http://www.ncbi.nlm.nih.gov/IEB/ToolBox/CPP_DOC/
>
> > my $human_genes = $comparadb->get_MemberAdaptor->fetch_by_source_taxon(
> >         'ENSEMBLGENE', 9606); # getting all human genes
> > my @params = (program  => 'blastp', database => $human_genes, _READMETHOD
> > => 'SearchIO' );
>
> 'database' has to be the name of the database of sequences to blast
> against. This has to exist as a set of blast index files on your disk.
> The 'formatdb' program can be used to create this. You appear to be
> passing some Perl object instead?
>
> Please read http://www.ncbi.nlm.nih.gov/blast/docs/
>
> > my $blast_obj = Bio::Tools::Run::StandAloneBlast->new(@params);
> > my $seq_obj = Bio::Seq->new(-id  =>"test query", -seq
> > =>$human_genes->[$i]->get_longest_peptide_Member()->sequence);
> > my $report_obj = $blast_obj->blastall($seq_obj);
>
> die "unable to blastall" if not defined $report_obj;
>
> > my $result_obj = $report_obj->next_result;
>
> die "no result found" if not defined $result_obj;




More information about the Bioperl-l mailing list