Diff of /analysis/submit.py [000000] .. [23d48c]

Switch to side-by-side view

--- a
+++ b/analysis/submit.py
@@ -0,0 +1,64 @@
+import argparse
+import os
+if __name__ == '__main__':
+    parser = argparse.ArgumentParser(description="An analyst for quick ML applications.",
+                                     add_help=False)
+
+    parser.add_argument('-icd', action='store', dest='CODES',default=
+                    '780.93,733.00,530.85,530.81,493.90,333.94,327.23,288.60,278.00,275.42'  
+                    ',250.00,250.40,729.1,585.9,571.8,564.1,473.9,472.0,428.9,331.0,285.9,277.7'
+                    ',276.1,272.4,272.1,256.4,311',type=str, 
+            help='Comma-separated list of icd-9 codes to run')
+    parser.add_argument('-ml',action='store',dest='MLS', type=str, 
+            default='LogisticRegression')
+    parser.add_argument('--short',action='store_false',dest='LONG', default=True)
+    parser.add_argument('--local',action='store_true',dest='LOCAL', default=False)
+    parser.add_argument('--norare',action='store_true',dest='NORARE', default=False)
+    parser.add_argument('-n_trials',action='store',dest='NTRIALS', default=1)
+    parser.add_argument('-m',action='store',dest='M', default=16000)
+    parser.add_argument('-cutoffs',action='store',dest='CUTOFFS', type=str, default='')
+    parser.add_argument('-trials',action='store',dest='TRIALS', type=str, default='')
+    parser.add_argument('-results',action='store',dest='RDIR', type=str, default='/project/moore/users/lacava/geis-ehr/results')
+    parser.add_argument('-dir',action='store',dest='DIR', type=str, 
+                        default='/project/moore/users/lacava/geis-ehr/phased/')
+   
+    args = parser.parse_args()
+  
+    if len(args.TRIALS)>0:
+        args.NTRIALS = len(args.TRIALS.split(','))
+
+    codes = args.CODES.split(',')
+    cutoffs = args.CUTOFFS.split(',')
+
+    q = 'moore_long' if args.LONG else 'moore_normal'
+
+    if args.LOCAL:
+        lpc_options = ''
+    else:
+        lpc_options = '--lsf -q {Q} -m {M} -n_jobs 1'.format(Q=q,M=args.M)
+    
+    for c in codes:
+        for delay in cutoffs:
+            if delay != '':
+                dataset = args.DIR + 'icd9_' + c + '_cutoff' + delay
+            else:
+                dataset = args.DIR + 'icd9_' + c 
+
+            if len(args.TRIALS)>0: 
+                cmd = ('python analyze.py {DATA} -ml {ML} -n_trials {NTR} {RARE} '
+                        '-trials {TR} {LPC}').format(DATA=dataset,
+                                                    ML=args.MLS,
+                                                    TR=args.TRIALS,
+                                                    NTR=args.NTRIALS,
+                                                    RARE='--norare' if args.NORARE else '',
+                                                    LPC=lpc_options)
+            else:
+                cmd = ('python analyze.py {DATA} -ml {ML} -n_trials {NTR} {RARE} '
+                        '-results {RDIR} {LPC}').format(DATA=dataset,
+                                        ML=args.MLS,
+                                        NTR=args.NTRIALS,
+                                        RARE='--norare' if args.NORARE else '',
+                                        RDIR=args.RDIR,
+                                        LPC=lpc_options)
+            print(cmd)
+            os.system(cmd)