def batchcn(args): """ %prog batchcn workdir samples.csv Run CNV segmentation caller in batch mode. Scans a workdir. """ p = OptionParser(batchcn.__doc__) p.add_option("--upload", default="s3://hli-mv-data-science/htang/ccn", help="Upload cn and seg results to s3") opts, args = p.parse_args(args) if len(args) != 2: sys.exit(not p.print_help()) workdir, samples = args upload = opts.upload store = upload + "/{}/*.seg".format(workdir) computed = [op.basename(x).split(".")[0] for x in glob_s3(store)] computed = set(computed) # Generate a bunch of cn commands fp = open(samples) nskipped = ntotal = 0 cmd = "python -m jcvi.variation.cnv cn --hmm --cleanup {}".format(workdir) for row in fp: samplekey, path = row.strip().split(",") ntotal += 1 if samplekey in computed: nskipped += 1 continue print " ".join((cmd, samplekey, path)) logging.debug("Skipped: {}".format(percentage(nskipped, ntotal)))
def batchcn(args): """ %prog batchcn workdir samples.csv Run CNV segmentation caller in batch mode. Scans a workdir. """ p = OptionParser(batchcn.__doc__) p.add_option("--upload", default="s3://hli-mv-data-science/htang/ccn", help="Upload cn and seg results to s3") opts, args = p.parse_args(args) if len(args) != 2: sys.exit(not p.print_help()) workdir, samples = args upload = opts.upload store = upload + "/{}/*.seg".format(workdir) computed = [op.basename(x).split(".")[0] for x in glob_s3(store)] computed = set(computed) # Generate a bunch of cn commands fp = open(samples) nskipped = ntotal = 0 cmd = "python -m jcvi.variation.cnv cn --hmm --cleanup {}".format(workdir) for row in fp: samplekey, path = row.strip().split(",") ntotal += 1 if samplekey in computed: nskipped += 1 continue print(" ".join((cmd, samplekey, path))) logging.debug("Skipped: {}".format(percentage(nskipped, ntotal)))