# Change what's inside the quotes into your MBL STAMPS server username, or something else unique
# reminder! hit shift-ENTER to execute cell & move onto next cell
username="CHANGEME"
# configure paths etc.
import sys
import os
os.environ['PYTHONPATH'] = '/usr/local/share/khmer/python'
sys.path.insert(0, '/usr/local/share/khmer/python')
import khmer
import screed
cd /mnt
/mnt
mkdir -p $username
mkdir: cannot create directory `CHANGEME': File exists
cd $username
/mnt/CHANGEME
You should now be in '/mnt/USERNAME', where USERNAME is not CHANGEME
import random
random.seed(1)
x = ["A"] + ["G"] + ["C"] + ["T"]
x = x*1000
random.shuffle(x)
x = "".join(x)
y = ["A"] + ["G"] + ["C"] + ["T"]
y = y*1000
random.shuffle(y)
y = "".join(y)
print 'x is', x[:100]
print 'y is', y[:100]
x is CAGACTTGGAAGCTGAGAGTCCGACGTCACTGCCTCAACTCGCGCAAATGTTCCCGCCAAATTGTATCCTAGGGATCTTCCATAAGCTTATATACGGGGG y is ATTAGACCACATGTTGCTAGCTATTCGGAGGAAGGCAGTTTAGCTAAATATGTGAGGGCTGTGGGACGAATATCGGGGGATGACGGTCCCATAGCTAGTT
outfp = open('metagenome.fa', 'w')
print >>outfp, ">x 1"
print >>outfp, x
print >>outfp, ">y 2"
print >>outfp, y
outfp.close()
!python /usr/local/share/2012-paper-diginorm/pipeline/make-biased-reads.py metagenome.fa | head -100000 > reads.fa
Traceback (most recent call last): File "/usr/local/share/2012-paper-diginorm/pipeline/make-biased-reads.py", line 56, in <module> print '>read%d\n%s' % (i, read) IOError: [Errno 32] Broken pipe
(Yes, you should see an error.)
!/usr/local/share/khmer/scripts/abundance-dist-single.py -k 20 -x 1e8 reads.fa reads.hist
PARAMETERS: - kmer size = 20 (-k) - n hashes = 4 (-N) - min hashsize = 1e+08 (-x) Estimated memory usage is 4e+08 bytes (n_hashes x min_hashsize) -------- making hashtable building tracking ht K: 20 HT sizes: [100000007, 100000037, 100000039, 100000049] outputting to reads.hist consuming input, round 1 -- reads.fa preparing hist from reads.fa... consuming input, round 2 -- reads.fa
histdata = numpy.loadtxt('reads.hist')
plot(histdata[:,0], histdata[:,1])
xlabel("k-mer abundance")
ylabel("N of k-mers with that abundance")
<matplotlib.text.Text at 0x7feadc120bd0>
plot(histdata[:,0], histdata[:,1])
axis(ymax=500)
xlabel("k-mer abundance")
ylabel("N of k-mers with that abundance")
<matplotlib.text.Text at 0x7feadc1153d0>
plot(histdata[:,0], histdata[:,1])
axis(xmax=10)
(0.0, 10, 0.0, 160000.0)
How do the 3 peaks (1, 100, 800) shift relative to each other with (a) changing coverage and (b) different k values?
The '-k' parameter is set up above in the abundance-dist-single command; the coverage is set by how many sequences you keep ('head -10000') in the make-biased-reads.py command.