org.hammerlab.guacamole.jointcaller.evidence

MultiSampleSingleAlleleEvidence

case class MultiSampleSingleAlleleEvidence(parameters: Parameters, allele: AlleleAtLocus, inputs: InputCollection, normalDNAPooledEvidence: NormalDNASingleSampleSingleAlleleEvidence, tumorDNAPooledEvidence: TumorDNASingleSampleSingleAlleleEvidence, sampleEvidences: PerSample[SingleSampleSingleAlleleEvidence], annotations: Option[MultiSampleAnnotations]) extends Product with Serializable

Summarizes the evidence for a single allele across any number of samples.

Keeps track of the evidence for the allele in each sample individually, and also the pooled normal and tumor DNA.

parameters

joint caller parameters

allele

the allele under consideration

inputs

metadata for each sample: is it tumor / normal, is it DNA / RNA

normalDNAPooledEvidence

evidence for the pooled normal DNA samples

tumorDNAPooledEvidence

evidence for the pooled tumor DNA samples

sampleEvidences

evidences for each sample individually, corresponding to inputs

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. MultiSampleSingleAlleleEvidence
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new MultiSampleSingleAlleleEvidence(parameters: Parameters, allele: AlleleAtLocus, inputs: InputCollection, normalDNAPooledEvidence: NormalDNASingleSampleSingleAlleleEvidence, tumorDNAPooledEvidence: TumorDNASingleSampleSingleAlleleEvidence, sampleEvidences: PerSample[SingleSampleSingleAlleleEvidence], annotations: Option[MultiSampleAnnotations])

    parameters

    joint caller parameters

    allele

    the allele under consideration

    inputs

    metadata for each sample: is it tumor / normal, is it DNA / RNA

    normalDNAPooledEvidence

    evidence for the pooled normal DNA samples

    tumorDNAPooledEvidence

    evidence for the pooled tumor DNA samples

    sampleEvidences

    evidences for each sample individually, corresponding to inputs

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. val allEvidences: Vector[SingleSampleSingleAlleleEvidence]

    There are times when we want to treat all the per-sample evidences and pooled evidences together.

    There are times when we want to treat all the per-sample evidences and pooled evidences together. We do this with a sequence called allEvidences that has the evidence for each sample followed by that of the two pooled samples. The normal dna pooled sample is found at index normalDNAPooledIndex and the tumor pooled is at index tumorDNAPooledIndex in allEvidences.

  7. val allele: AlleleAtLocus

    the allele under consideration

  8. def annotate(multiAlleleEvidence: MultiSampleMultiAlleleEvidence, multipleStats: MultiplePileupStats): MultiSampleSingleAlleleEvidence

    Return a new instance with all available annotations computed.

  9. val annotations: Option[MultiSampleAnnotations]

  10. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  11. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. def failingFilterNames: Set[String]

    Names of filters that are causing this potential call to be considered filtered.

    Names of filters that are causing this potential call to be considered filtered.

    If this function returns an empty set, then the call is not filtered. That could be because it is a valid passing variant (in which isCalled will be true) or because it was force called and none of the filters happened to fail.

    Some filters apply to individual samples (e.g. strand bias), whereas others apply to all samples for an allele at a site (e.g. insufficient evidence in normal). The former are implemented in SampleAlleleEvidenceAnnotation, and the latter are in CallsAtSiteAnnotation.

    The handling for the first kind of filter (per-sample filters) is a bit subtle here, because we do not care about filters that are failing on some samples when, even if those samples were ignored, a call would still be triggered. For example, if two tumors are triggering a somatic variant call and one of them fails the strand bias filter, we do *not* want to treat this call as filtered. If however both of those samples fail the strand bias filter, or even if they both fail different filters, then we do want to consider this call as filtered. A consequence of this is that if isCalled is false, then this function will never return any individual sample filters.

  14. def failsFilters: Boolean

    true if this potential call should be considered to be filtered

  15. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. val germlineAlleles: (String, String)

    Called germline genotype.

    Called germline genotype. We currently just use the maximum posterior from the pooled normal data.

  17. def germlinePrior(alleles: (String, String)): Double

    The individual TumorDNASampleAlleleEvidence and NormalDNASampleAlleleEvidence instances calculate the mixture likelihoods, but do not know about the prior.

    The individual TumorDNASampleAlleleEvidence and NormalDNASampleAlleleEvidence instances calculate the mixture likelihoods, but do not know about the prior. We establish the germline prior here.

    The rationale for having this in the current class instead of the SampleAlleleEvidence classes is that eventually we are going to use RNA evidence and phasing information to influence the posteriors, and we'll need to calculate that here, since the individual evidence classes only know about a single sample.

    Note that at no point are we working with normalized priors, likelihoods, or posteriors. All of these are specified just up to proportionality and do not need to sum to 1.

    alleles

    pair of alleles to return prior for

    returns

    negative log-base 10 prior probability for that allele. Since log probs are negative, this number will be *positive* (it's the negative of a negative).

  18. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  19. val inputs: InputCollection

    metadata for each sample: is it tumor / normal, is it DNA / RNA

  20. val isCall: Boolean

    Are we making a germline or somatic call?

  21. val isGermlineCall: Boolean

    Are we making a germline call here?

  22. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  23. val isSomaticCall: Boolean

    Are we making a somatic call here?

  24. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  25. val normalDNAPooledEvidence: NormalDNASingleSampleSingleAlleleEvidence

    evidence for the pooled normal DNA samples

  26. val normalDNAPooledIndex: Int

  27. final def notify(): Unit

    Definition Classes
    AnyRef
  28. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  29. val parameters: Parameters

    joint caller parameters

  30. val perNormalSampleGermlinePosteriors: Map[SampleId, Map[(String, String), Double]]

    Log10 posterior probabilities for each possible germline genotype in each normal sample.

    Log10 posterior probabilities for each possible germline genotype in each normal sample.

    Map is from input index (i.e. index into inputs and sampleEvidences) to mixture posteriors.

    The posteriors are plain log10 logprobs. They are negative. The maximum a posteriori estimate is the greatest (i.e. least negative, closest to 0) posterior.

  31. val perTumorDnaSampleSomaticPosteriors: Map[SampleId, Map[AlleleMixture, Double]]

    Log10 posterior probabilities for a somatic variant in each tumor DNA sample.

    Log10 posterior probabilities for a somatic variant in each tumor DNA sample. See perNormalSampleGermlinePosteriors.

    returns

    Map {input index -> {{Allele -> Frequency} -> Posterior probability}

  32. val perTumorDnaSampleTopMixtures: Map[SampleId, AlleleMixture]

    Maximum a posteriori somatic mixtures for each tumor sample.

  33. val perTumorRnaSampleSomaticPosteriors: Map[SampleId, Map[AlleleMixture, Double]]

    Log10 posterior probabilities for a somatic variant in each tumor RNA sample.

  34. val perTumorRnaSampleTopMixtures: Map[SampleId, AlleleMixture]

    Maximum a posteriori somatic mixtures for each tumor sample.

  35. val pooledGermlinePosteriors: Map[(String, String), Double]

  36. val sampleEvidences: PerSample[SingleSampleSingleAlleleEvidence]

    evidences for each sample individually, corresponding to inputs

  37. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  38. val tumorDNAPooledEvidence: TumorDNASingleSampleSingleAlleleEvidence

    evidence for the pooled tumor DNA samples

  39. val tumorDNAPooledIndex: Int

  40. val tumorDnaSampleIndicesTriggered: PerSample[SampleId]

    Indices of tumor samples that triggered a call.

  41. val tumorRnaSampleExpressed: PerSample[SampleId]

    Indices of tumor rna samples with expression

  42. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  43. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  44. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped