[Bioperl-l] Problem with StandAloneBlastPlus

Darío Carballido dcarball at tandar.cnea.gov.ar
Mon Jul 21 18:38:19 UTC 2014

Hello Trey, 

Thanks for the answer. StandAloneBlast uses the ncbi legacy programs
(blastall), while StandAloneBlastPlus uses the new NCBI blast+ programs. And
-outfmt in the new programs is kind of the equivalent to -m in the old
As a matter of fact, at first I had a script that used StandAloneBlast, and
adapted it to use StandAloneBlastPlus, hoping that I could make use of the
new features and customize the output to include the query coverage. 
Now I have a script that performs exactly as the old one but using the new
blast+, but I'm stuck with the output customization thing because I pass the
-outfmt value between quotes, but they seem to disappear somewhere I can't
figure out. 

Darío Carballido

-----Mensaje original-----
De: bioperl-l-bounces+dcarball=tandar.cnea.gov.ar at mailman.open-bio.org
[mailto:bioperl-l-bounces+dcarball=tandar.cnea.gov.ar at mailman.open-bio.org]
En nombre de Ashton Trey Belew
Enviado el: lunes, 21 de julio de 2014 14:46
Para: bioperl-l at mailman.open-bio.org
Asunto: Re: [Bioperl-l] Problem with StandAloneBlastPlus

Hash: SHA1

  Hello Dario,
  Below is a portion of a little script which I use for
StandAloneBlast and which uses -m 7.  It doesn't exactly answer your
question, but I hope it will be similar enough to prove helpful.
  My ignorant thought is that you can modify my use of -m to suit your
purpose; but after rereading your message I am guessing you already
tried something similar.

my @params = (-program => 'blastn', -b => $max_hits,
              -I => 't', -a => $processors,
              -database => $library_db, -m => 7,);

my $query_count = 0;
while (my $query_seq = $query_library->next_seq()) {
 my $search = new Bio::Tools::Run::StandAloneBlast(
  -_READMETHOD => 'blastxml', @params);
 my $blast_output = new Bio::SearchIO(
  -format => 'blastxml', -verbose => 1,);
 $blast_output = $search->blastall($query_seq,
  -format=>'blastxml', -verbose => 1,);
 my $result_count = 0;
  while (my $result = $blast_output->next_result()) {
  ## Collect alignments
  }  ## End of results by query
}  ## End of queries

On 07/21/2014 11:57 AM, Darío Carballido wrote:
> Hello,
> I’m working with this script that uses StandAloneBlastPlus, and I
> would like to take advantage of a new feature in the latest
> releases of blast+, which allows me to present the query coverage
> in the output (among other values). For that to work, the value of
> –outfmt needs to be quoted (for example, -outfmt “7 std qcovs”), so
> I’m passing the outfmt parameter via
> -method_args => [ '-outfmt' => '"7 std qcovs"' ]
> (I’m using single quotes with doubles inside, so that the double
> quotes are passed literally).
> But when I run it, the quotes seem to get lost and I end up with
> the error I get when I pass that value without the quotes:
> Error: Too many positional arguments (1), the offending value: std
> I have tried lots of combinations with single, double quotes,
> character escaping and I couldn’t find the way to make it work.
> Any help?
> Thanks,
> Darío Carballido
> _______________________________________________ Bioperl-l mailing
> list Bioperl-l at mailman.open-bio.org 
> http://mailman.open-bio.org/mailman/listinfo/bioperl-l
Version: GnuPG v1

Bioperl-l mailing list
Bioperl-l at mailman.open-bio.org
Se certificó que el correo no contiene virus.
Comprobada por AVG - www.avg.es
Versión: 2014.0.4716 / Base de datos de virus: 3986/7875 - Fecha de la
versión: 07/18/2014

More information about the Bioperl-l mailing list