[BioPython] [Correction!] Emboss eprimer3-Product Size Range

Stefanie Lück lueck at ipk-gatersleben.de
Mon Dec 1 16:31:22 UTC 2008


I'm sorry!
I prescribed me!

primer_cl.set_parameter("-productsizerange", "100-200 250-300")
Causes no output and not
primer_cl.set_parameter("-productsizerange", "100-200")
as I wrote!

>You don't seem to be using Bio.Fasta, and this module is now obsolete.
Sorry I just forgot to deleted. I showed only a part of the code.

The error print and on the command prompt gives:

Command line:
eprimer3 -sequence in.txt -outfile out.pr3 -target 50,100 -productsizerange 100-200 250-300 
Return code:
1
Errors:
Error: Argument '250-300' : Too many parameters 3/2
Messages:

But it's described in the eprimer3 help file:

"-productsizerange   range      [100-300] ...If one desires PCR
                                  products in either the range from 100 to 150
                                  bases or in the range from 200 to 250 bases
                                  then one would set this parameter to
                                  100-150 200-250.
                                  EPrimer3 favors ranges to the left side of
                                  the parameter string..."

My input file is a normal multiple fasta file.

Thanks and sorry for the mistake!






----- Original Message ----- 
From: "Peter" <biopython at maubp.freeserve.co.uk>
To: "Stefanie Lück" <lueck at ipk-gatersleben.de>
Cc: <biopython at biopython.org>
Sent: Monday, December 01, 2008 4:08 PM
Subject: Re: [BioPython] Emboss eprimer3-Product Size Range


On Mon, Dec 1, 2008 at 1:13 PM, Stefanie Lück <lueck at ipk-gatersleben.de> wrote:
> Hi!
>
> I'm working with Emboss eprimer3 and I have a short question:
>
> How can I enter the paramter "product size range"? Usually it's
> something like 500-1000 450-500 etc.

According the the eprimer3 tool itself (try "eprimer3 --help" at the
command line) you seem to be using productsizerange correctly in the
following code snippet.

> from Bio import Fasta

You don't seem to be using Bio.Fasta, and this module is now obsolete.

> from Bio.Emboss.Applications import Primer3Commandline
> from Bio.Application import generic_run
> from Bio.Emboss import Primer3
>
> primer_cl = Primer3Commandline()
> primer_cl.set_parameter("-sequence", "in.txt")
> primer_cl.set_parameter("-outfile", "out.pr3")
> primer_cl.set_parameter("-productsizerange", "100-200")
> primer_cl.set_parameter("-target", "%s,%s" % (50, 100))
> result, messages, errors = generic_run(primer_cl)

So this fails - what what exactly goes wrong  i.e. what does this give:

print "Command line:"
print primer_cl
print "Return code:"
print result.return_code
print "Errors:"
print errors.read()
print "Messages":
print messages.read()

And my usual question in this sort of situation: what happens if you
run this command by hand at the command prompt?

If you email me your input file (in.txt) then I can try running this
on my machine (don't send it to the mailing list unless its very small
and you don't mind sharing it with the world).

Peter




More information about the Biopython mailing list