def test_call_from_allele_counter(self): ref = fasta.IndexedFastaReader(testdata.CHR20_FASTA) sam_reader = sam.SamReader(testdata.CHR20_BAM) size = 1000 region = ranges.make_range('chr20', 10000000, 10000000 + size) allele_counter = _allelecounter.AlleleCounter( ref.c_reader, region, deepvariant_pb2.AlleleCounterOptions(partition_size=size)) caller = variant_calling.VariantCaller( deepvariant_pb2.VariantCallerOptions(min_count_snps=2, min_count_indels=2, min_fraction_snps=0.12, min_fraction_indels=0.12, sample_name='sample_name', p_error=0.001, max_gq=50, gq_resolution=1, ploidy=2)) # Grab all of the reads in our region and add them to the allele_counter. reads = list(sam_reader.query(region)) self.assertNotEmpty(reads) for read in reads: allele_counter.add(read) # Get the candidates records for this whole region. candidates = caller.calls_from_allele_counter(allele_counter) # We should have at least some candidates and some gvcf records. self.assertNotEmpty(candidates) # Each candidate should be a DeepVariantCall. for candidate in candidates: self.assertIsInstance(candidate, deepvariant_pb2.DeepVariantCall)
def __init__(self, options, use_cache_table=True, max_cache_coverage=100): self.options = options self.cpp_variant_caller = variant_calling.VariantCaller(self.options) self.max_cache_coverage = max_cache_coverage if use_cache_table: self.table = [[ self._calc_reference_confidence(n_ref, n_total) for n_ref in range(n_total + 1) ] for n_total in range(self.max_cache_coverage + 1)] else: self.table = None
def __init__(self, options, use_cache_table, max_cache_coverage): self.options = options self.cpp_variant_caller = variant_calling.VariantCaller(self.options) self.max_cache_coverage = max_cache_coverage # pylint: disable=g-complex-comprehension if use_cache_table: self.table = [[ self._calc_reference_confidence(n_ref, n_total) for n_ref in range(n_total + 1) ] for n_total in range(self.max_cache_coverage + 1)] else: self.table = None