diff options
| author | Calvin <calvin@EESI> | 2013-03-08 15:32:50 -0500 | 
|---|---|---|
| committer | Calvin <calvin@EESI> | 2013-03-08 15:32:50 -0500 | 
| commit | c18793c210ea44cef63db3568791cbad537bdb79 (patch) | |
| tree | 033fa26ea26b7a60af6b33a0f42d3c31c725cecc /src/quikr_train | |
| parent | 5908ac75a1f82356a3b91127f84853bf9c336fa8 (diff) | |
moving some stuff
Diffstat (limited to 'src/quikr_train')
| -rwxr-xr-x | src/quikr_train | 48 | 
1 files changed, 48 insertions, 0 deletions
| diff --git a/src/quikr_train b/src/quikr_train new file mode 100755 index 0000000..6e599c9 --- /dev/null +++ b/src/quikr_train @@ -0,0 +1,48 @@ +#!/usr/bin/python +import numpy as np +import quikr +import os +import sys +import gzip +from subprocess import * +import platform +import argparse + +def main(): +  """ +  You can call this script independently, and will save the  +  trained matrix as a numpy file. + +  example: python quikr-train.py -i input.fasta -k 6 -o trained_matrix.npy +  +  """ +  parser = argparse.ArgumentParser(description= +  " quikr_train returns a custom trained matrix that can be used with \ +    the quikr function. \n You must supply a kmer. \n ") + +  parser.add_argument("-i", "--input", help="training database of sequences (fasta format)", required=True) +  parser.add_argument("-o", "--output", help="sensing matrix (text file)", required=True) +  parser.add_argument("-k", "--kmer", help="kmer size (integer)",  +                      type=int, required=False ) +  parser.add_argument("-z", "--compress", help="compress output (integer)",  +                      action='store_true', required=False) + +  args = parser.parse_args() + +  if not os.path.isfile(args.input): +    parser.error( "Input database not found") + +  # call the quikr train function, save the output with np.save +  matrix = quikr.train_matrix(args.input, args.kmer) + +  if args.compress:  +    output_file = gzip.open(args.output, "wb") +  else: +    output_file = open(args.output, "wb") + +  np.save(output_file, matrix) + +  return 0 +   +if __name__ == "__main__": +    sys.exit(main()) | 
