def _match_one_allele(true_allele):
   if true_allele == truth_variant.reference_bases:
     return 0
   else:
     simplifed_true_allele = variant_utils.simplify_alleles(
         truth_variant.reference_bases, true_allele)
     for alt_index, alt_allele in enumerate(candidate_variant.alternate_bases):
       simplifed_alt_allele = variant_utils.simplify_alleles(
           candidate_variant.reference_bases, alt_allele)
       if simplifed_true_allele == simplifed_alt_allele:
         return alt_index + 1
     # If nothing matched, we don't have this alt, so the alt allele index for
     # should be 0 (i.e., not any alt).
     return 0
 def _match_one_allele(true_allele):
   if true_allele == truth_variant.reference_bases:
     return 0
   else:
     simplified_true_allele = variant_utils.simplify_alleles(
         truth_variant.reference_bases, true_allele)
     for alt_index, alt_allele in enumerate(candidate_variant.alternate_bases):
       simplified_alt_allele = variant_utils.simplify_alleles(
           candidate_variant.reference_bases, alt_allele)
       if simplified_true_allele == simplified_alt_allele:
         return alt_index + 1
     # If nothing matched, we don't have this alt, so the alt allele index for
     # should be 0 (i.e., not any alt).
     return 0
Exemple #3
0
def simplify_alleles(variant):
    """Replaces the alleles in variants with their simplified versions.

  This function takes a variant and replaces its ref and alt alleles with those
  produced by a call to variant_utils.simplify_alleles() to remove common
  postfix bases in the alleles that may be present due to pruning away alleles.

  Args:
    variant: learning.genomics.genomics.Variant proto we want to simplify.

  Returns:
    variant with its ref and alt alleles replaced with their simplified
      equivalents.
  """
    simplified_alleles = variant_utils.simplify_alleles(
        variant.reference_bases, *variant.alternate_bases)
    variant.reference_bases = simplified_alleles[0]
    variant.alternate_bases[:] = simplified_alleles[1:]
    variant.end = variant.start + len(variant.reference_bases)
    return variant
def simplify_alleles(variant):
  """Replaces the alleles in variants with their simplified versions.

  This function takes a variant and replaces its ref and alt alleles with those
  produced by a call to variant_utils.simplify_alleles() to remove common
  postfix bases in the alleles that may be present due to pruning away alleles.

  Args:
    variant: learning.genomics.genomics.Variant proto we want to simplify.

  Returns:
    variant with its ref and alt alleles replaced with their simplified
      equivalents.
  """
  simplified_alleles = variant_utils.simplify_alleles(variant.reference_bases,
                                                      *variant.alternate_bases)
  variant.reference_bases = simplified_alleles[0]
  variant.alternate_bases[:] = simplified_alleles[1:]
  variant.end = variant.start + len(variant.reference_bases)
  return variant
Exemple #5
0
 def test_simplify_alleles(self, alleles, expected):
   self.assertEqual(variant_utils.simplify_alleles(*alleles), tuple(expected))
   self.assertEqual(
       variant_utils.simplify_alleles(*reversed(alleles)),
       tuple(reversed(expected)))
 def test_simplify_alleles(self, alleles, expected):
   self.assertEqual(variant_utils.simplify_alleles(*alleles), tuple(expected))
   self.assertEqual(
       variant_utils.simplify_alleles(*reversed(alleles)),
       tuple(reversed(expected)))