Skip to content
Snippets Groups Projects
build_results.py 41.4 KiB
Newer Older
    ipynb_s = os.path.join(prg_path, "Summarized_results.ipynb")
    ipynb = os.path.join(output, "Summarized_results_%s.ipynb" % type_v.upper())
    shutil.copy(ipynb_s, ipynb)
    groups = []
    with open(rules, "r") as rules_in, open(os.path.join(output, "rules.sim"), "w") as rules_out:
        for line in rules_in:
            parts = re.split(r"\s+", line.rstrip())
            if parts[0] == type_v.upper():
                groups.append((int(parts[1]), int(parts[2])))

    # Build HTML summary:
    add_jupyter_header(records=records,
                       groups=groups,
                       type_v=type_v,
                       jupyter_file=ipynb)

Floreal Cabanettes's avatar
Floreal Cabanettes committed
    template = os.path.join(prg_path, "full.tpl")
    exit_code = os.system("jupyter nbconvert --to html --template %s --execute %s" % (template, ipynb))
    if exit_code != 0:
        raise Exception("Jupyter notebook fails with exit status %d" % exit_code)
    print_results(nb_records, orphans, with_xlsx, output, do_genotype, ipynb)
def get_vcf_files(vcf_list):
    """
    Get vcf files saved in a list file
    :param vcf_list: the list file
    :return: list of vcf files
    """
    files = []
    with open(vcf_list, "r") as vcf:
        for line in vcf:
            line = line.rstrip()
            if line != "":
                files.append(line)
    return files


def main():
    """
    Main function
    """
    # parse the command line args
    args = get_args()
    init(output=args.output,
         vcf_files=get_vcf_files(args.vcfs),
         true_vcf=args.true_vcf,
         filtered_vcfs=get_vcf_files(args.filtered_vcf),
         type_v=args.type,
         overlap_cutoff=args.overlap_cutoff,
         left_precision=args.left_precision,
         right_precision=args.right_precision,
         no_xls=args.no_xls,
         haploid=args.haploid,
         rules=args.rules)

# initialize the script
if __name__ == '__main__':
Floreal Cabanettes's avatar
Floreal Cabanettes committed
    sys.exit(main())