def check_track_clone_options(parser, options): options.clones = None if options.clonefile: libcommon.check_options_file(options.clonefile) options.clones = libcommon.read_list(options.clonefile) if options.track_minfreq > 1.0: parser.error("--track_minfreq is the proportion, not %, should be < 1")
def check_input_options(parser, options): if options.indir is None: raise libcommon.InputError("Please specify input directory.") libcommon.check_options_dir(options.indir) if not os.path.exists(options.outdir): system("mkdir -p %s" % options.outdir) libcommon.check_options_dir(options.outdir) if not options.jobTree: options.jobTree = os.path.join(options.outdir, "jobTree") options.group2samples = None options.matched = None if options.metainfo: libcommon.check_options_file(options.metainfo) groups, group2samples, matched = read_group_info(options.metainfo) options.group2samples = group2samples options.matched = matched options.groups = groups my_analyses = ['diversity', 'similarity', 'clonesize', 'lendist', 'geneusage', 'aausage', 'overlap', 'trackclone', 'prelim', 'db', 'model'] analyses = [] if options.analyses: analyses = options.analyses.split(',') if 'all' in analyses: analyses = my_analyses[:-3] #if not options.matched: # analyses.remove('trackclone') else: for a in analyses: if a not in my_analyses: raise libcommon.InputError("Unknown analysis %s." % a) #if 'trackclone' in analyses and not options.matched: # raise libcommon.InputError(("Matched samples are required if " + # "'trackclone' analysis is specified." + # " Please modify the metadata file.")) options.analyses = analyses if options.samout: samouts = options.samout.split(',') for samout in samouts: if samout not in ['fasta', 'txt', 'pickle', 'all']: raise libcommon.InputError("Unknown sample out format %s." % samout) if 'all' in samouts: options.samout = ['fasta', 'txt', 'pickle'] else: options.samout = samouts if 'prelim' in analyses and 'pickle' not in options.samout: options.samout.append('pickle') samoutdir = os.path.join(options.outdir, "samples") for format in options.samout: # e.g: outdir/samples/productive/pickle dir1 = os.path.join(samoutdir, "productive", format) system("mkdir -p %s" % dir1) dir2 = os.path.join(samoutdir, "non_productive", format) system("mkdir -p %s" % dir2) drawcommon.check_plot_options(parser, options)