I was doing some next generation sequencing (NGS) analysis over the weekend, for the the first time. As such, I had to get some of the common software tools like PEAR and bowtie. Their official sites were hosted by SourceForge, but I didn’t want to download the binaries from SourceForge ’cause I’m paranoid about malware. So, I compiled them myself.
The process turned out to be super easy!
They all have git repos:
For example, for bowtie, you can do:
git clone https://github.com/BenLangmead/bowtie.git
For bowtie, you need libtbb, and for bowtie2, you need to compile with NO_TBB=1.
I’m pleasantly surprised because I remember the struggle of building open source projects when I was a young’un.
Just wanted to share!
Oh man, I feel like Santa when a new shipment of pipette tips comes in and I resupply the benches.
p200 for you, and you, and you!
Today I learned some yeast strains express proteins that allow them to clump together and precipitate out super fast. Neat!
The same phenomenon happens in some beer yeast, where they precipitate out of beer during the brewing process.
I feel like a yeast pimp whenever I mate different strains of yeast together.
This is how I feel in lab.
The first time I went into lab after my PyCon hiatus, I found a broken centrifuge on Marcelle’s bench.
Died of a broken heart. Marcelle you are missed.
Marcelle had just left the lab group for medical school a few weeks prior.
Much like how you should use a csv library to generate csv files, you should use a library to generate GenBank files.
In Python, you can use Biopython!
Here’s a small recipe you get to started. It creates a GenBank from a sequence, and even includes an annotation.
from Bio import SeqIO
from Bio.Seq import Seq
from Bio.SeqRecord import SeqRecord
from Bio.Alphabet import IUPAC
from Bio.SeqFeature import SeqFeature, FeatureLocation
# Create a sequence
sequence_string = "ggggaaaattttaaaaccccaaaa"
sequence_object = Seq(sequence_string, IUPAC.unambiguous_dna)
# Create a record
record = SeqRecord(sequence_object,
id='123456789', # random accession number
description='An example GenBank file generated by BioPython')
# Add annotation
feature = SeqFeature(FeatureLocation(start=3, end=12), type='misc_feature')
# Save as GenBank file
output_file = open('example.gb', 'w')
SeqIO.write(record, output_file, 'genbank')
LOCUS Example 24 bp DNA UNK 01-JAN-1980
DEFINITION An example GenBank file generated by BioPython
1 ggggaaaatt ttaaaacccc aaaa
Check out the really good Biopython documentation for more details!