records = list() query_records = list() for record in vcf_reader: if len(record.FILTER ) == 0 and record.is_indel and cp.requires_mt_provean(record): query_records.append(record) records.append(record) if len(query_records) > 0 and not args.no_remote: # run mutation taster for record in records: if 'MT_pred' not in record.INFO: query_mutation_taster(record) if args.run_local: import provean_query query_manager = provean_query.ProveanQueryManager( query_records, args.provean_script, args.num_provean_threads, args.mem_per_thread, cluster_mode=args.cluster_mode) query_manager.run_queries() else: query = rpq.RemoteProveanQuery(query_records) query.run_query() for record in records: if len(record.FILTER) == 0 and record.is_indel: cp.classify_pathogenicity(record, no_remote=args.no_remote) vcf_writer.write_record(record) vcf_writer.close()
desc="mutation taster score (run if necessary)", source=None, version=None) vcf_writer = vcf.Writer(sys.stdout, vcf_reader) records = list() query_records = list() for record in vcf_reader: if cp.requires_mt_provean(record): query_records.append(record) records.append(record) if len(query_records) > 0 and not args.no_remote: # run mutation taster for record in records: if 'MT_pred' not in record.INFO: query_mutation_taster(record) if args.run_local: import provean_query query_manager = provean_query.ProveanQueryManager(query_records, args.provean_script, args.num_provean_threads, args.mem_per_thread, cluster_mode=args.cluster_mode) query_manager.run_queries() else: query = rpq.RemoteProveanQuery(query_records) query.run_query() for record in records: cp.classify_pathogenicity(record, no_remote=args.no_remote) vcf_writer.write_record(record) vcf_writer.close()
import vcf import sys import classify_pathogenicity_vcf as cp if __name__ == "__main__": parser = argparse.ArgumentParser(prog='classify_pathogenicity_vcf.py', description='Add pathogenicity to vcf file') parser.add_argument('vcf_infile') args = parser.parse_args() vcf_reader = vcf.Reader(open(args.vcf_infile, 'r')) assert "ANN" in vcf_reader.infos assert "HOTSPOT" in vcf_reader.infos or "hotspot" in vcf_reader.infos assert "fathmm_pred" in vcf_reader.infos assert "facetsLOH" in vcf_reader.infos assert "MutationTaster_pred" in vcf_reader.infos # add necessary info headers vcf_reader.infos['pathogenicity'] = vcf.parser._Info(id='pathogenicity', num=-1, type='String', desc="Classification of pathogenicity", source=None, version=None) vcf_writer = vcf.Writer(sys.stdout, vcf_reader) records = list() for record in vcf_reader: cp.classify_pathogenicity(record) vcf_writer.write_record(record) vcf_writer.close()
import classify_pathogenicity_vcf as cp if __name__ == "__main__": parser = argparse.ArgumentParser(prog='classify_snv_pathogenicity_vcf.py', description='Add pathogenicity to vcf file') parser.add_argument('vcf_infile') args = parser.parse_args() vcf_reader = vcf.Reader(open(args.vcf_infile, 'r')) assert "ANN" in vcf_reader.infos assert "HOTSPOT" in vcf_reader.infos or "hotspot" in vcf_reader.infos assert "FATHMM_pred" in vcf_reader.infos assert "facetsLOH" in vcf_reader.infos or "LOH" in vcf_reader.infos assert "MutationTaster_pred" in vcf_reader.infos # add necessary info headers vcf_reader.infos['pathogenicity'] = vcf.parser._Info(id='pathogenicity', num=-1, type='String', desc="Classification of pathogenicity", source=None, version=None) records = [x for x in vcf_reader] for record in records: if len(record.FILTER) == 0 and record.is_snp: cp.classify_pathogenicity(record) vcf_writer = vcf.Writer(sys.stdout, vcf_reader) for record in records: vcf_writer.write_record(record) vcf_writer.close()