2
$\begingroup$

In a bioinformatics programming course I am currently teaching (using Python, and approached from a mostly CS rather than a biology background) I assigned a project which involves finding sites where restriction enzymes bind to a DNA sequence. The project is heavily influenced by Chapter 9 of the now classic text "Beginning Perl for Bioinformatics" by James Tisdall. I am using the REBASE database, in particular REBASE Format #9. In this format, each restriction enzyme has a recognition sequence which looks like e.g. C^YCGRG where ^ gives information about the exact cut-point and upper-case letters such as Y and R other than ACGT are ambiguity codes. The point of the project is to turn these into regular expressions where cleavage information is discarded and the ambiguity codes are expanded into character classes, and then use these regular expressions to search for matches.

All fairly straightforward, but one very observant student noticed that some enzymes had multiple sequences, for example M.BssHIII has a total of 5 sequences: ACGCGT,CCGCGG,RGCGCY,RCCGGY,GCGCGC. It is easy to see that these correspond to a total of 11 sequences (after the Rs and Ys are expanded), far fewer than the 144 sequences which would match VSSSSB (which is the least ambiguous single sequence capable of matching the above).

My question is, what is going on here? Am I safe in simply replacing , by | (for "or") in the regular expression, or is there something more subtle going on? Only 8 of the nearly 5000 enzymes have such multiple sequences, and neither the Tisdall book nor even the description of the format (both of which seem to assume single sequences) shed any light on the situation.

$\endgroup$
2
$\begingroup$

I would honestly just remove the non-homologous cutting site enzymes from the database. Firstly, these are biology students and require a simple picture to grasp the concept of coding via regex pattern matching. Secondly, in a wet-lab nobody uses these enzymes, I was not even aware the "8" existed until your post. In a teaching lab the best motto is "keep it simple".

$\endgroup$
  • 1
    $\begingroup$ I was tempted to remove these 8 from the database, and might end up doing so, but I was genuinely impressed with the student who noticed it and told her that I would look into it. Most of the students are actually CS students taking it as an elective, but I have a couple of biology majors or students that have some major-minor combo between CS and biology or chemistry. $\endgroup$ – John Coleman Mar 15 '19 at 23:10
  • $\begingroup$ I guess the cat is out of the bag. The difference is this is teaching rather than research. In my experience I would create a subproject to avoid distraction, and offer to all students is interested. Thus if you introduce the | and use it to filter the "anomalous 8 restriction enzymes" into a dictionary, panda, or np, to be analysed later if there is interest. Its interesting a core-bioinformatics text has a "bug". $\endgroup$ – Michael G. Mar 16 '19 at 15:50
  • 1
    $\begingroup$ At first I thought that these enzymes postdated the Tisdall book (which was published in 2001) but a check of the references for these shows that some of them were studied as early as the 1980s. I'll have to check out the book again, it is possible that there was something I missed. It is also possible that in an earlier edition of REBASE these were either missing (since when Tisdall wrote there was only around 1000 enzymes included) or had ? for their recognition sequence. I'll see if it is possible to download earlier versions of it. It could be interesting to see how it changed over time. $\endgroup$ – John Coleman Mar 16 '19 at 16:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.