Exemple #1
0
def main():
    """Run a few length or intersection calculations on human BED files.
    """
    parser = argparse.ArgumentParser(
        description='Compute coverage and other stats of BED files.')
    parser.add_argument('bed_files', nargs='+', metavar='BEDFILE',
                        help='One or more BED files.')
    parser.add_argument('-o', '--output', metavar='FN_OUT',
                        help='Save the intersection file.')
    args = parser.parse_args()
    get_coverage_chrom = ft.partial(get_coverage, pred=in_mapped_contig)
    beds = map(get_coverage_chrom, args.bed_files)
    if len(beds) > 1:
        intersect = reduce(overlap_coverages, beds)
        beds.append(intersect)
        if args.output is not None:
            intersect.saveas(args.output)
            args.bed_files.append(args.output)
        else:
            args.bed_files.append('intersect')
    bases = map(number_of_bases_covered, beds)
    percents = map(lambda x: 100 * float(x) / genome_length, bases)
    print "filename, number of bases, percent of genome"
    for fn, base, perc in zip(args.bed_files, bases, percents):
        print fn, to_si(base), '%.2f' % perc
Exemple #2
0
def main():
    """Run a few length or intersection calculations on human BED files.
    """
    parser = argparse.ArgumentParser(
        description='Compute coverage and other stats of BED files.')
    parser.add_argument('bed_files', nargs='+', metavar='BEDFILE',
                        help='One or more BED files.')
    parser.add_argument('-v', '--verbose', action='store_true',
                        help='Print runtime information')
    args = parser.parse_args()
    get_coverage_v = ft.partial(get_coverage, verbose=args.verbose)
    beds = map(get_coverage_v, args.bed_files)
    if len(beds) > 1:
        intersect = reduce(overlap_coverages, beds)
        beds.append(intersect)
        args.bed_files.append('intersect')
    bases = map(number_of_bases_covered, beds)
    percents = map(lambda x: 100 * float(x) / genome_length, bases)
    print "filename, number of bases, percent of genome"
    for fn, base, perc in zip(args.bed_files, bases, percents):
        print fn, to_si(base), '%.2f' % perc