[Biopython-dev] Restriction analysis package.

fsms at users.sourceforge.net fsms at users.sourceforge.net
Mon May 17 06:27:00 EDT 2004

Brad Chapman wrote:

>>I would like to know if you would be interested by a restriction 
>>analysis package.
>>The packages create classes for restriction enzymes from Rebase data and 
>>allows to use the generated enzymes to search for restriction site and 
>>cut the DNA sequence.
>We would definitely be interested in something like this, and would
>be happy to see your code. Biopython does already have some work
>done with Rebase (see Bio/Rebase/__init__.py). Basically, this is
>a parser and record to hold Rebase information. It would be great if
>your code either supplemented or surpassed the code we already have.
>We just want to avoid duplication within Biopython.
>If you haven't already you might want to take a look at the guide
>for contributing to Biopython:
>Thanks for the mail and looking forward to seeing your code!

The package is somehow complementary from the Rebase package, without 
using it though. It allows to download the file in EMBOSS format from 
Rebase and builds the corresponding enzymes. Each enzyme is a class on 
its own (I wanted to play with metaclass). Using Seq and MutableSeq as 
DNA format it is possible to scan for restriction sites and retrieve the 
corresponding fragments. Other methods are provided to better describe 
the enzymes (isoschizomers, compatible ends, methylable  or not, blunt 
or overhang and so on ....).

The code is part of a python package called Rana 
(http://sourceforge.net/projects/rana). This package is early alpha and 
not mature enough to be included in Biopython, moreover I licensed it 
under GPL.

However, the code which deals with the restriction enzymes is more 
mature (I would say beta). I tested the results it gives against the 
restriction analysis facilities of EMBOSS for common vectors (pBR322, 
pGEMs, ...) and it is ok. I will release this part under python license. 
For the moment, I have removed the class which allows meta-analysis 
(full restriction analysis, limited to Blunt, ...) as it has not been 
tested with Biopython DNA objects.

The code itself does not follow exactly the Biopython convention for 
coding (class methods are in lower case with underscore as in Python). 
But, this was the convention for the whole Rana package. This can be 
changed eventually.

I release a new package in the Rana project (ranaBiopython-0.1) which 
contains the
package to be included in Biopython. I have tested it quickly and it 
seems to work fine.

Simply put the rana folder in the Biopython folder, the package comes 
with a bunch of enzyme classes from the march or april Rebase release 
and should work out of the box. If you want to test the update system 
you will have to edit RanaConfig.py to enter
the address of your ftp_proxy and an e-mail address for anonymous ftp 

The README contains an example of interactive session using the package 
which should get you started.

You can find it at http://sourceforge.net/projects/rana



More information about the Biopython-dev mailing list