changeset 2:fcc2f5992551 draft

Uploaded
author greg
date Wed, 18 Nov 2015 08:12:26 -0500
parents 31cc73d7c234
children fd4daf02a338
files genetrack.py
diffstat 1 files changed, 26 insertions(+), 26 deletions(-) [+]
line wrap: on
line diff
--- a/genetrack.py	Tue Nov 17 15:19:11 2015 -0500
+++ b/genetrack.py	Wed Nov 18 08:12:26 2015 -0500
@@ -9,43 +9,43 @@
 .txt format: tab-separated chromosome, strand, start, end, read count
 .gff format: standard gff, score is read count
 """
-import argparse
+import optparse
 import csv
 import os
 import genetrack_util
 
 
 if __name__ == '__main__':
-    parser = argparse.ArgumentParser()
-    parser.add_argument('--input_format', dest='input_format', help='Input format.')
-    parser.add_argument('--input', dest='inputs', action='append', nargs=2, help="Input datasets")
-    parser.add_argument('--sigma', dest='sigma', type=int, default=5, help='Sigma.')
-    parser.add_argument('--exclusion', dest='exclusion', type=int, default=20, help='Exclusion zone.')
-    parser.add_argument('--up_width', dest='up_width', type=int, default=10, help='Upstream width of called peaks.')
-    parser.add_argument('--down_width', dest='down_width', type=int, default=10, help='Downstream width of called peaks.')
-    parser.add_argument('--filter', dest='filter', type=int, default=3, help='Absolute read filter.')
-    parser.add_argument('--chunk_size', dest='chunk_size', type=int, default=10, help='Size, in millions of base pairs.')
-    args = parser.parse_args()
+    parser = optparse.OptionParser()
+    parser.add_option('-t', '--input_format', dest='input_format', type='string', help='Input format')
+    parser.add_option('-i', '--input', dest='inputs', type='string', action='append', nargs=2, help='Input datasets')
+    parser.add_option('-s', '--sigma', dest='sigma', type='int', default=5, help='Sigma.')
+    parser.add_option('-e', '--exclusion', dest='exclusion', type='int', default=20, help='Exclusion zone.')
+    parser.add_option('-u', '--up_width', dest='up_width', type='int', default=10, help='Upstream width of called peaks.')
+    parser.add_option('-d', '--down_width', dest='down_width', type='int', default=10, help='Downstream width of called peaks.')
+    parser.add_option('-f', '--filter', dest='filter', type='int', default=3, help='Absolute read filter.')
+    parser.add_option('-c', '--chunk_size', dest='chunk_size', type='int', default=10, help='Size, in millions of base pairs.')
+    options, args = parser.parse_args()
 
     os.mkdir('output')
-    for (dataset_path, hid) in args.inputs:
-        if args.input_format == 'gff':
+    for (dataset_path, hid) in options.inputs:
+        if options.input_format == 'gff':
             # Make sure the reads for each chromosome are sorted by index.
             input_path = genetrack_util.sort_chromosome_reads_by_index(dataset_path)
         else:
             # We're processing ssccidx data.
             input_path = dataset_path
-        output_name = 's%se%su%sd%sF%s_on_data_%s' % (str(args.sigma),
-                                                      str(args.exclusion),
-                                                      str(args.up_width),
-                                                      str(args.down_width),
-                                                      str(args.filter),
+        output_name = 's%se%su%sd%sF%s_on_data_%s' % (str(options.sigma),
+                                                      str(options.exclusion),
+                                                      str(options.up_width),
+                                                      str(options.down_width),
+                                                      str(options.filter),
                                                       str(hid))
         output_path = os.path.join('output', output_name)
         reader = csv.reader(open(input_path, 'rU'), delimiter='\t')
         writer = csv.writer(open(output_path, 'wt'), delimiter='\t')
-        chunk_size = args.chunk_size * 10 ** 6
-        width = args.sigma * 5
+        chunk_size = options.chunk_size * 10 ** 6
+        width = options.sigma * 5
         manager = genetrack_util.ChromosomeManager(reader)
         while not manager.done:
             cname = manager.chromosome_name()
@@ -62,9 +62,9 @@
                                                   window,
                                                   writer,
                                                   process_bounds,
-                                                  args.width,
-                                                  args.sigma,
-                                                  args.up_width,
-                                                  args.down_width,
-                                                  args.exclusion,
-                                                  args.filter)
+                                                  width,
+                                                  options.sigma,
+                                                  options.up_width,
+                                                  options.down_width,
+                                                  options.exclusion,
+                                                  options.filter)