]> git.donarmstrong.com Git - biopieces.git/commitdiff
added kmer_freq biopiece and tests
authormartinahansen <martinahansen@74ccb610-7750-0410-82ae-013aeee3265d>
Tue, 1 Feb 2011 13:27:02 +0000 (13:27 +0000)
committermartinahansen <martinahansen@74ccb610-7750-0410-82ae-013aeee3265d>
Tue, 1 Feb 2011 13:27:02 +0000 (13:27 +0000)
git-svn-id: http://biopieces.googlecode.com/svn/trunk@1243 74ccb610-7750-0410-82ae-013aeee3265d

bp_bin/kmer_freq [new file with mode: 0755]
bp_test/in/kmer_freq.in [new file with mode: 0644]
bp_test/out/kmer_freq.out.1 [new file with mode: 0644]
bp_test/out/kmer_freq.out.2 [new file with mode: 0644]
bp_test/out/kmer_freq.out.3 [new file with mode: 0644]
bp_test/out/kmer_freq.out.4 [new file with mode: 0644]
bp_test/test/test_kmer_freq [new file with mode: 0755]

diff --git a/bp_bin/kmer_freq b/bp_bin/kmer_freq
new file mode 100755 (executable)
index 0000000..733eed3
--- /dev/null
@@ -0,0 +1,65 @@
+#!/usr/bin/env ruby
+
+# Copyright (C) 2007-2011 Martin A. Hansen.
+
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+# http://www.gnu.org/copyleft/gpl.html
+
+# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+# This program is part of the Biopieces framework (www.biopieces.org).
+
+# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> DESCRIPTION <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+# Determine the frequencies for k-mers in sequences in the stream.
+
+# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+require 'biopieces'
+require 'seq'
+require 'pp'
+
+casts = []
+casts << {:long=>'size', :short=>'s', :type=>'uint',   :mandatory=>false, :default=>4,     :allowed=>nil,               :disallowed=>'0'}
+casts << {:long=>'type', :short=>'t', :type=>'string', :mandatory=>false, :default=>"dna", :allowed=>"dna,rna,protein", :disallowed=>nil}
+
+bp = Biopieces.new
+
+options = bp.parse(ARGV, casts)
+
+oligos = Seq.generate_oligos(options[:size], options[:type])
+
+bp.each_record do |record|
+  if record.has_key? :SEQ
+    kmers  = {}
+    oligos.each { |oligo| kmers[oligo.upcase] = 0 }
+
+    (0 ... record[:SEQ].length - options[:size]).each do |i|
+      kmer = record[:SEQ][i .. i + options[:size] - 1].upcase
+      kmers[kmer] += 1 if kmers[kmer]
+    end
+
+    record.merge! kmers
+  end
+
+  bp.puts record
+end
+
+# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+__END__
diff --git a/bp_test/in/kmer_freq.in b/bp_test/in/kmer_freq.in
new file mode 100644 (file)
index 0000000..32f2412
--- /dev/null
@@ -0,0 +1,6 @@
+DUMMY: nothing
+---
+SEQ: atcgatcgatcg
+---
+SEQ: atcgatcgatcgATCGATCGATCG
+---
diff --git a/bp_test/out/kmer_freq.out.1 b/bp_test/out/kmer_freq.out.1
new file mode 100644 (file)
index 0000000..cbb552a
--- /dev/null
@@ -0,0 +1,518 @@
+DUMMY: nothing
+---
+SEQ: atcgatcgatcg
+AAAA: 0
+AAAT: 0
+AAAC: 0
+AAAG: 0
+AATA: 0
+AATT: 0
+AATC: 0
+AATG: 0
+AACA: 0
+AACT: 0
+AACC: 0
+AACG: 0
+AAGA: 0
+AAGT: 0
+AAGC: 0
+AAGG: 0
+ATAA: 0
+ATAT: 0
+ATAC: 0
+ATAG: 0
+ATTA: 0
+ATTT: 0
+ATTC: 0
+ATTG: 0
+ATCA: 0
+ATCT: 0
+ATCC: 0
+ATCG: 2
+ATGA: 0
+ATGT: 0
+ATGC: 0
+ATGG: 0
+ACAA: 0
+ACAT: 0
+ACAC: 0
+ACAG: 0
+ACTA: 0
+ACTT: 0
+ACTC: 0
+ACTG: 0
+ACCA: 0
+ACCT: 0
+ACCC: 0
+ACCG: 0
+ACGA: 0
+ACGT: 0
+ACGC: 0
+ACGG: 0
+AGAA: 0
+AGAT: 0
+AGAC: 0
+AGAG: 0
+AGTA: 0
+AGTT: 0
+AGTC: 0
+AGTG: 0
+AGCA: 0
+AGCT: 0
+AGCC: 0
+AGCG: 0
+AGGA: 0
+AGGT: 0
+AGGC: 0
+AGGG: 0
+TAAA: 0
+TAAT: 0
+TAAC: 0
+TAAG: 0
+TATA: 0
+TATT: 0
+TATC: 0
+TATG: 0
+TACA: 0
+TACT: 0
+TACC: 0
+TACG: 0
+TAGA: 0
+TAGT: 0
+TAGC: 0
+TAGG: 0
+TTAA: 0
+TTAT: 0
+TTAC: 0
+TTAG: 0
+TTTA: 0
+TTTT: 0
+TTTC: 0
+TTTG: 0
+TTCA: 0
+TTCT: 0
+TTCC: 0
+TTCG: 0
+TTGA: 0
+TTGT: 0
+TTGC: 0
+TTGG: 0
+TCAA: 0
+TCAT: 0
+TCAC: 0
+TCAG: 0
+TCTA: 0
+TCTT: 0
+TCTC: 0
+TCTG: 0
+TCCA: 0
+TCCT: 0
+TCCC: 0
+TCCG: 0
+TCGA: 2
+TCGT: 0
+TCGC: 0
+TCGG: 0
+TGAA: 0
+TGAT: 0
+TGAC: 0
+TGAG: 0
+TGTA: 0
+TGTT: 0
+TGTC: 0
+TGTG: 0
+TGCA: 0
+TGCT: 0
+TGCC: 0
+TGCG: 0
+TGGA: 0
+TGGT: 0
+TGGC: 0
+TGGG: 0
+CAAA: 0
+CAAT: 0
+CAAC: 0
+CAAG: 0
+CATA: 0
+CATT: 0
+CATC: 0
+CATG: 0
+CACA: 0
+CACT: 0
+CACC: 0
+CACG: 0
+CAGA: 0
+CAGT: 0
+CAGC: 0
+CAGG: 0
+CTAA: 0
+CTAT: 0
+CTAC: 0
+CTAG: 0
+CTTA: 0
+CTTT: 0
+CTTC: 0
+CTTG: 0
+CTCA: 0
+CTCT: 0
+CTCC: 0
+CTCG: 0
+CTGA: 0
+CTGT: 0
+CTGC: 0
+CTGG: 0
+CCAA: 0
+CCAT: 0
+CCAC: 0
+CCAG: 0
+CCTA: 0
+CCTT: 0
+CCTC: 0
+CCTG: 0
+CCCA: 0
+CCCT: 0
+CCCC: 0
+CCCG: 0
+CCGA: 0
+CCGT: 0
+CCGC: 0
+CCGG: 0
+CGAA: 0
+CGAT: 2
+CGAC: 0
+CGAG: 0
+CGTA: 0
+CGTT: 0
+CGTC: 0
+CGTG: 0
+CGCA: 0
+CGCT: 0
+CGCC: 0
+CGCG: 0
+CGGA: 0
+CGGT: 0
+CGGC: 0
+CGGG: 0
+GAAA: 0
+GAAT: 0
+GAAC: 0
+GAAG: 0
+GATA: 0
+GATT: 0
+GATC: 2
+GATG: 0
+GACA: 0
+GACT: 0
+GACC: 0
+GACG: 0
+GAGA: 0
+GAGT: 0
+GAGC: 0
+GAGG: 0
+GTAA: 0
+GTAT: 0
+GTAC: 0
+GTAG: 0
+GTTA: 0
+GTTT: 0
+GTTC: 0
+GTTG: 0
+GTCA: 0
+GTCT: 0
+GTCC: 0
+GTCG: 0
+GTGA: 0
+GTGT: 0
+GTGC: 0
+GTGG: 0
+GCAA: 0
+GCAT: 0
+GCAC: 0
+GCAG: 0
+GCTA: 0
+GCTT: 0
+GCTC: 0
+GCTG: 0
+GCCA: 0
+GCCT: 0
+GCCC: 0
+GCCG: 0
+GCGA: 0
+GCGT: 0
+GCGC: 0
+GCGG: 0
+GGAA: 0
+GGAT: 0
+GGAC: 0
+GGAG: 0
+GGTA: 0
+GGTT: 0
+GGTC: 0
+GGTG: 0
+GGCA: 0
+GGCT: 0
+GGCC: 0
+GGCG: 0
+GGGA: 0
+GGGT: 0
+GGGC: 0
+GGGG: 0
+---
+SEQ: atcgatcgatcgATCGATCGATCG
+AAAA: 0
+AAAT: 0
+AAAC: 0
+AAAG: 0
+AATA: 0
+AATT: 0
+AATC: 0
+AATG: 0
+AACA: 0
+AACT: 0
+AACC: 0
+AACG: 0
+AAGA: 0
+AAGT: 0
+AAGC: 0
+AAGG: 0
+ATAA: 0
+ATAT: 0
+ATAC: 0
+ATAG: 0
+ATTA: 0
+ATTT: 0
+ATTC: 0
+ATTG: 0
+ATCA: 0
+ATCT: 0
+ATCC: 0
+ATCG: 5
+ATGA: 0
+ATGT: 0
+ATGC: 0
+ATGG: 0
+ACAA: 0
+ACAT: 0
+ACAC: 0
+ACAG: 0
+ACTA: 0
+ACTT: 0
+ACTC: 0
+ACTG: 0
+ACCA: 0
+ACCT: 0
+ACCC: 0
+ACCG: 0
+ACGA: 0
+ACGT: 0
+ACGC: 0
+ACGG: 0
+AGAA: 0
+AGAT: 0
+AGAC: 0
+AGAG: 0
+AGTA: 0
+AGTT: 0
+AGTC: 0
+AGTG: 0
+AGCA: 0
+AGCT: 0
+AGCC: 0
+AGCG: 0
+AGGA: 0
+AGGT: 0
+AGGC: 0
+AGGG: 0
+TAAA: 0
+TAAT: 0
+TAAC: 0
+TAAG: 0
+TATA: 0
+TATT: 0
+TATC: 0
+TATG: 0
+TACA: 0
+TACT: 0
+TACC: 0
+TACG: 0
+TAGA: 0
+TAGT: 0
+TAGC: 0
+TAGG: 0
+TTAA: 0
+TTAT: 0
+TTAC: 0
+TTAG: 0
+TTTA: 0
+TTTT: 0
+TTTC: 0
+TTTG: 0
+TTCA: 0
+TTCT: 0
+TTCC: 0
+TTCG: 0
+TTGA: 0
+TTGT: 0
+TTGC: 0
+TTGG: 0
+TCAA: 0
+TCAT: 0
+TCAC: 0
+TCAG: 0
+TCTA: 0
+TCTT: 0
+TCTC: 0
+TCTG: 0
+TCCA: 0
+TCCT: 0
+TCCC: 0
+TCCG: 0
+TCGA: 5
+TCGT: 0
+TCGC: 0
+TCGG: 0
+TGAA: 0
+TGAT: 0
+TGAC: 0
+TGAG: 0
+TGTA: 0
+TGTT: 0
+TGTC: 0
+TGTG: 0
+TGCA: 0
+TGCT: 0
+TGCC: 0
+TGCG: 0
+TGGA: 0
+TGGT: 0
+TGGC: 0
+TGGG: 0
+CAAA: 0
+CAAT: 0
+CAAC: 0
+CAAG: 0
+CATA: 0
+CATT: 0
+CATC: 0
+CATG: 0
+CACA: 0
+CACT: 0
+CACC: 0
+CACG: 0
+CAGA: 0
+CAGT: 0
+CAGC: 0
+CAGG: 0
+CTAA: 0
+CTAT: 0
+CTAC: 0
+CTAG: 0
+CTTA: 0
+CTTT: 0
+CTTC: 0
+CTTG: 0
+CTCA: 0
+CTCT: 0
+CTCC: 0
+CTCG: 0
+CTGA: 0
+CTGT: 0
+CTGC: 0
+CTGG: 0
+CCAA: 0
+CCAT: 0
+CCAC: 0
+CCAG: 0
+CCTA: 0
+CCTT: 0
+CCTC: 0
+CCTG: 0
+CCCA: 0
+CCCT: 0
+CCCC: 0
+CCCG: 0
+CCGA: 0
+CCGT: 0
+CCGC: 0
+CCGG: 0
+CGAA: 0
+CGAT: 5
+CGAC: 0
+CGAG: 0
+CGTA: 0
+CGTT: 0
+CGTC: 0
+CGTG: 0
+CGCA: 0
+CGCT: 0
+CGCC: 0
+CGCG: 0
+CGGA: 0
+CGGT: 0
+CGGC: 0
+CGGG: 0
+GAAA: 0
+GAAT: 0
+GAAC: 0
+GAAG: 0
+GATA: 0
+GATT: 0
+GATC: 5
+GATG: 0
+GACA: 0
+GACT: 0
+GACC: 0
+GACG: 0
+GAGA: 0
+GAGT: 0
+GAGC: 0
+GAGG: 0
+GTAA: 0
+GTAT: 0
+GTAC: 0
+GTAG: 0
+GTTA: 0
+GTTT: 0
+GTTC: 0
+GTTG: 0
+GTCA: 0
+GTCT: 0
+GTCC: 0
+GTCG: 0
+GTGA: 0
+GTGT: 0
+GTGC: 0
+GTGG: 0
+GCAA: 0
+GCAT: 0
+GCAC: 0
+GCAG: 0
+GCTA: 0
+GCTT: 0
+GCTC: 0
+GCTG: 0
+GCCA: 0
+GCCT: 0
+GCCC: 0
+GCCG: 0
+GCGA: 0
+GCGT: 0
+GCGC: 0
+GCGG: 0
+GGAA: 0
+GGAT: 0
+GGAC: 0
+GGAG: 0
+GGTA: 0
+GGTT: 0
+GGTC: 0
+GGTG: 0
+GGCA: 0
+GGCT: 0
+GGCC: 0
+GGCG: 0
+GGGA: 0
+GGGT: 0
+GGGC: 0
+GGGG: 0
+---
diff --git a/bp_test/out/kmer_freq.out.2 b/bp_test/out/kmer_freq.out.2
new file mode 100644 (file)
index 0000000..411af63
--- /dev/null
@@ -0,0 +1,38 @@
+DUMMY: nothing
+---
+SEQ: atcgatcgatcg
+AA: 0
+AT: 3
+AC: 0
+AG: 0
+TA: 0
+TT: 0
+TC: 3
+TG: 0
+CA: 0
+CT: 0
+CC: 0
+CG: 2
+GA: 2
+GT: 0
+GC: 0
+GG: 0
+---
+SEQ: atcgatcgatcgATCGATCGATCG
+AA: 0
+AT: 6
+AC: 0
+AG: 0
+TA: 0
+TT: 0
+TC: 6
+TG: 0
+CA: 0
+CT: 0
+CC: 0
+CG: 5
+GA: 5
+GT: 0
+GC: 0
+GG: 0
+---
diff --git a/bp_test/out/kmer_freq.out.3 b/bp_test/out/kmer_freq.out.3
new file mode 100644 (file)
index 0000000..a697e78
--- /dev/null
@@ -0,0 +1,38 @@
+DUMMY: nothing
+---
+SEQ: atcgatcgatcg
+AA: 0
+AU: 0
+AC: 0
+AG: 0
+UA: 0
+UU: 0
+UC: 0
+UG: 0
+CA: 0
+CU: 0
+CC: 0
+CG: 2
+GA: 2
+GU: 0
+GC: 0
+GG: 0
+---
+SEQ: atcgatcgatcgATCGATCGATCG
+AA: 0
+AU: 0
+AC: 0
+AG: 0
+UA: 0
+UU: 0
+UC: 0
+UG: 0
+CA: 0
+CU: 0
+CC: 0
+CG: 5
+GA: 5
+GU: 0
+GC: 0
+GG: 0
+---
diff --git a/bp_test/out/kmer_freq.out.4 b/bp_test/out/kmer_freq.out.4
new file mode 100644 (file)
index 0000000..b18313e
--- /dev/null
@@ -0,0 +1,806 @@
+DUMMY: nothing
+---
+SEQ: atcgatcgatcg
+FF: 0
+FL: 0
+FS: 0
+FY: 0
+FC: 0
+FW: 0
+FP: 0
+FH: 0
+FQ: 0
+FR: 0
+FI: 0
+FM: 0
+FT: 0
+FN: 0
+FK: 0
+FV: 0
+FA: 0
+FD: 0
+FE: 0
+FG: 0
+LF: 0
+LL: 0
+LS: 0
+LY: 0
+LC: 0
+LW: 0
+LP: 0
+LH: 0
+LQ: 0
+LR: 0
+LI: 0
+LM: 0
+LT: 0
+LN: 0
+LK: 0
+LV: 0
+LA: 0
+LD: 0
+LE: 0
+LG: 0
+SF: 0
+SL: 0
+SS: 0
+SY: 0
+SC: 0
+SW: 0
+SP: 0
+SH: 0
+SQ: 0
+SR: 0
+SI: 0
+SM: 0
+ST: 0
+SN: 0
+SK: 0
+SV: 0
+SA: 0
+SD: 0
+SE: 0
+SG: 0
+YF: 0
+YL: 0
+YS: 0
+YY: 0
+YC: 0
+YW: 0
+YP: 0
+YH: 0
+YQ: 0
+YR: 0
+YI: 0
+YM: 0
+YT: 0
+YN: 0
+YK: 0
+YV: 0
+YA: 0
+YD: 0
+YE: 0
+YG: 0
+CF: 0
+CL: 0
+CS: 0
+CY: 0
+CC: 0
+CW: 0
+CP: 0
+CH: 0
+CQ: 0
+CR: 0
+CI: 0
+CM: 0
+CT: 0
+CN: 0
+CK: 0
+CV: 0
+CA: 0
+CD: 0
+CE: 0
+CG: 2
+WF: 0
+WL: 0
+WS: 0
+WY: 0
+WC: 0
+WW: 0
+WP: 0
+WH: 0
+WQ: 0
+WR: 0
+WI: 0
+WM: 0
+WT: 0
+WN: 0
+WK: 0
+WV: 0
+WA: 0
+WD: 0
+WE: 0
+WG: 0
+PF: 0
+PL: 0
+PS: 0
+PY: 0
+PC: 0
+PW: 0
+PP: 0
+PH: 0
+PQ: 0
+PR: 0
+PI: 0
+PM: 0
+PT: 0
+PN: 0
+PK: 0
+PV: 0
+PA: 0
+PD: 0
+PE: 0
+PG: 0
+HF: 0
+HL: 0
+HS: 0
+HY: 0
+HC: 0
+HW: 0
+HP: 0
+HH: 0
+HQ: 0
+HR: 0
+HI: 0
+HM: 0
+HT: 0
+HN: 0
+HK: 0
+HV: 0
+HA: 0
+HD: 0
+HE: 0
+HG: 0
+QF: 0
+QL: 0
+QS: 0
+QY: 0
+QC: 0
+QW: 0
+QP: 0
+QH: 0
+QQ: 0
+QR: 0
+QI: 0
+QM: 0
+QT: 0
+QN: 0
+QK: 0
+QV: 0
+QA: 0
+QD: 0
+QE: 0
+QG: 0
+RF: 0
+RL: 0
+RS: 0
+RY: 0
+RC: 0
+RW: 0
+RP: 0
+RH: 0
+RQ: 0
+RR: 0
+RI: 0
+RM: 0
+RT: 0
+RN: 0
+RK: 0
+RV: 0
+RA: 0
+RD: 0
+RE: 0
+RG: 0
+IF: 0
+IL: 0
+IS: 0
+IY: 0
+IC: 0
+IW: 0
+IP: 0
+IH: 0
+IQ: 0
+IR: 0
+II: 0
+IM: 0
+IT: 0
+IN: 0
+IK: 0
+IV: 0
+IA: 0
+ID: 0
+IE: 0
+IG: 0
+MF: 0
+ML: 0
+MS: 0
+MY: 0
+MC: 0
+MW: 0
+MP: 0
+MH: 0
+MQ: 0
+MR: 0
+MI: 0
+MM: 0
+MT: 0
+MN: 0
+MK: 0
+MV: 0
+MA: 0
+MD: 0
+ME: 0
+MG: 0
+TF: 0
+TL: 0
+TS: 0
+TY: 0
+TC: 3
+TW: 0
+TP: 0
+TH: 0
+TQ: 0
+TR: 0
+TI: 0
+TM: 0
+TT: 0
+TN: 0
+TK: 0
+TV: 0
+TA: 0
+TD: 0
+TE: 0
+TG: 0
+NF: 0
+NL: 0
+NS: 0
+NY: 0
+NC: 0
+NW: 0
+NP: 0
+NH: 0
+NQ: 0
+NR: 0
+NI: 0
+NM: 0
+NT: 0
+NN: 0
+NK: 0
+NV: 0
+NA: 0
+ND: 0
+NE: 0
+NG: 0
+KF: 0
+KL: 0
+KS: 0
+KY: 0
+KC: 0
+KW: 0
+KP: 0
+KH: 0
+KQ: 0
+KR: 0
+KI: 0
+KM: 0
+KT: 0
+KN: 0
+KK: 0
+KV: 0
+KA: 0
+KD: 0
+KE: 0
+KG: 0
+VF: 0
+VL: 0
+VS: 0
+VY: 0
+VC: 0
+VW: 0
+VP: 0
+VH: 0
+VQ: 0
+VR: 0
+VI: 0
+VM: 0
+VT: 0
+VN: 0
+VK: 0
+VV: 0
+VA: 0
+VD: 0
+VE: 0
+VG: 0
+AF: 0
+AL: 0
+AS: 0
+AY: 0
+AC: 0
+AW: 0
+AP: 0
+AH: 0
+AQ: 0
+AR: 0
+AI: 0
+AM: 0
+AT: 3
+AN: 0
+AK: 0
+AV: 0
+AA: 0
+AD: 0
+AE: 0
+AG: 0
+DF: 0
+DL: 0
+DS: 0
+DY: 0
+DC: 0
+DW: 0
+DP: 0
+DH: 0
+DQ: 0
+DR: 0
+DI: 0
+DM: 0
+DT: 0
+DN: 0
+DK: 0
+DV: 0
+DA: 0
+DD: 0
+DE: 0
+DG: 0
+EF: 0
+EL: 0
+ES: 0
+EY: 0
+EC: 0
+EW: 0
+EP: 0
+EH: 0
+EQ: 0
+ER: 0
+EI: 0
+EM: 0
+ET: 0
+EN: 0
+EK: 0
+EV: 0
+EA: 0
+ED: 0
+EE: 0
+EG: 0
+GF: 0
+GL: 0
+GS: 0
+GY: 0
+GC: 0
+GW: 0
+GP: 0
+GH: 0
+GQ: 0
+GR: 0
+GI: 0
+GM: 0
+GT: 0
+GN: 0
+GK: 0
+GV: 0
+GA: 2
+GD: 0
+GE: 0
+GG: 0
+---
+SEQ: atcgatcgatcgATCGATCGATCG
+FF: 0
+FL: 0
+FS: 0
+FY: 0
+FC: 0
+FW: 0
+FP: 0
+FH: 0
+FQ: 0
+FR: 0
+FI: 0
+FM: 0
+FT: 0
+FN: 0
+FK: 0
+FV: 0
+FA: 0
+FD: 0
+FE: 0
+FG: 0
+LF: 0
+LL: 0
+LS: 0
+LY: 0
+LC: 0
+LW: 0
+LP: 0
+LH: 0
+LQ: 0
+LR: 0
+LI: 0
+LM: 0
+LT: 0
+LN: 0
+LK: 0
+LV: 0
+LA: 0
+LD: 0
+LE: 0
+LG: 0
+SF: 0
+SL: 0
+SS: 0
+SY: 0
+SC: 0
+SW: 0
+SP: 0
+SH: 0
+SQ: 0
+SR: 0
+SI: 0
+SM: 0
+ST: 0
+SN: 0
+SK: 0
+SV: 0
+SA: 0
+SD: 0
+SE: 0
+SG: 0
+YF: 0
+YL: 0
+YS: 0
+YY: 0
+YC: 0
+YW: 0
+YP: 0
+YH: 0
+YQ: 0
+YR: 0
+YI: 0
+YM: 0
+YT: 0
+YN: 0
+YK: 0
+YV: 0
+YA: 0
+YD: 0
+YE: 0
+YG: 0
+CF: 0
+CL: 0
+CS: 0
+CY: 0
+CC: 0
+CW: 0
+CP: 0
+CH: 0
+CQ: 0
+CR: 0
+CI: 0
+CM: 0
+CT: 0
+CN: 0
+CK: 0
+CV: 0
+CA: 0
+CD: 0
+CE: 0
+CG: 5
+WF: 0
+WL: 0
+WS: 0
+WY: 0
+WC: 0
+WW: 0
+WP: 0
+WH: 0
+WQ: 0
+WR: 0
+WI: 0
+WM: 0
+WT: 0
+WN: 0
+WK: 0
+WV: 0
+WA: 0
+WD: 0
+WE: 0
+WG: 0
+PF: 0
+PL: 0
+PS: 0
+PY: 0
+PC: 0
+PW: 0
+PP: 0
+PH: 0
+PQ: 0
+PR: 0
+PI: 0
+PM: 0
+PT: 0
+PN: 0
+PK: 0
+PV: 0
+PA: 0
+PD: 0
+PE: 0
+PG: 0
+HF: 0
+HL: 0
+HS: 0
+HY: 0
+HC: 0
+HW: 0
+HP: 0
+HH: 0
+HQ: 0
+HR: 0
+HI: 0
+HM: 0
+HT: 0
+HN: 0
+HK: 0
+HV: 0
+HA: 0
+HD: 0
+HE: 0
+HG: 0
+QF: 0
+QL: 0
+QS: 0
+QY: 0
+QC: 0
+QW: 0
+QP: 0
+QH: 0
+QQ: 0
+QR: 0
+QI: 0
+QM: 0
+QT: 0
+QN: 0
+QK: 0
+QV: 0
+QA: 0
+QD: 0
+QE: 0
+QG: 0
+RF: 0
+RL: 0
+RS: 0
+RY: 0
+RC: 0
+RW: 0
+RP: 0
+RH: 0
+RQ: 0
+RR: 0
+RI: 0
+RM: 0
+RT: 0
+RN: 0
+RK: 0
+RV: 0
+RA: 0
+RD: 0
+RE: 0
+RG: 0
+IF: 0
+IL: 0
+IS: 0
+IY: 0
+IC: 0
+IW: 0
+IP: 0
+IH: 0
+IQ: 0
+IR: 0
+II: 0
+IM: 0
+IT: 0
+IN: 0
+IK: 0
+IV: 0
+IA: 0
+ID: 0
+IE: 0
+IG: 0
+MF: 0
+ML: 0
+MS: 0
+MY: 0
+MC: 0
+MW: 0
+MP: 0
+MH: 0
+MQ: 0
+MR: 0
+MI: 0
+MM: 0
+MT: 0
+MN: 0
+MK: 0
+MV: 0
+MA: 0
+MD: 0
+ME: 0
+MG: 0
+TF: 0
+TL: 0
+TS: 0
+TY: 0
+TC: 6
+TW: 0
+TP: 0
+TH: 0
+TQ: 0
+TR: 0
+TI: 0
+TM: 0
+TT: 0
+TN: 0
+TK: 0
+TV: 0
+TA: 0
+TD: 0
+TE: 0
+TG: 0
+NF: 0
+NL: 0
+NS: 0
+NY: 0
+NC: 0
+NW: 0
+NP: 0
+NH: 0
+NQ: 0
+NR: 0
+NI: 0
+NM: 0
+NT: 0
+NN: 0
+NK: 0
+NV: 0
+NA: 0
+ND: 0
+NE: 0
+NG: 0
+KF: 0
+KL: 0
+KS: 0
+KY: 0
+KC: 0
+KW: 0
+KP: 0
+KH: 0
+KQ: 0
+KR: 0
+KI: 0
+KM: 0
+KT: 0
+KN: 0
+KK: 0
+KV: 0
+KA: 0
+KD: 0
+KE: 0
+KG: 0
+VF: 0
+VL: 0
+VS: 0
+VY: 0
+VC: 0
+VW: 0
+VP: 0
+VH: 0
+VQ: 0
+VR: 0
+VI: 0
+VM: 0
+VT: 0
+VN: 0
+VK: 0
+VV: 0
+VA: 0
+VD: 0
+VE: 0
+VG: 0
+AF: 0
+AL: 0
+AS: 0
+AY: 0
+AC: 0
+AW: 0
+AP: 0
+AH: 0
+AQ: 0
+AR: 0
+AI: 0
+AM: 0
+AT: 6
+AN: 0
+AK: 0
+AV: 0
+AA: 0
+AD: 0
+AE: 0
+AG: 0
+DF: 0
+DL: 0
+DS: 0
+DY: 0
+DC: 0
+DW: 0
+DP: 0
+DH: 0
+DQ: 0
+DR: 0
+DI: 0
+DM: 0
+DT: 0
+DN: 0
+DK: 0
+DV: 0
+DA: 0
+DD: 0
+DE: 0
+DG: 0
+EF: 0
+EL: 0
+ES: 0
+EY: 0
+EC: 0
+EW: 0
+EP: 0
+EH: 0
+EQ: 0
+ER: 0
+EI: 0
+EM: 0
+ET: 0
+EN: 0
+EK: 0
+EV: 0
+EA: 0
+ED: 0
+EE: 0
+EG: 0
+GF: 0
+GL: 0
+GS: 0
+GY: 0
+GC: 0
+GW: 0
+GP: 0
+GH: 0
+GQ: 0
+GR: 0
+GI: 0
+GM: 0
+GT: 0
+GN: 0
+GK: 0
+GV: 0
+GA: 5
+GD: 0
+GE: 0
+GG: 0
+---
diff --git a/bp_test/test/test_kmer_freq b/bp_test/test/test_kmer_freq
new file mode 100755 (executable)
index 0000000..4af9bf6
--- /dev/null
@@ -0,0 +1,19 @@
+#!/bin/bash
+
+source "$BP_DIR/bp_test/lib/test.sh"
+
+run "$bp -I $in -O $tmp"
+assert_no_diff $tmp $out.1
+clean
+
+run "$bp -I $in -s 2 -O $tmp"
+assert_no_diff $tmp $out.2
+clean
+
+run "$bp -I $in -s 2 -t rna -O $tmp"
+assert_no_diff $tmp $out.3
+clean
+
+run "$bp -I $in -s 2 -t protein -O $tmp"
+assert_no_diff $tmp $out.4
+clean