Class WgsMetrics

java.lang.Object
htsjdk.samtools.metrics.MetricBase
picard.analysis.MergeableMetricBase
picard.analysis.WgsMetrics
Direct Known Subclasses:
CollectRawWgsMetrics.RawWgsMetrics, CollectWgsMetricsWithNonZeroCoverage.WgsMetricsWithNonZeroCoverage

@DocumentedFeature(groupName="Metrics", summary="Metrics") public class WgsMetrics extends MergeableMetricBase
Metrics for evaluating the performance of whole genome sequencing experiments.
  • Nested Class Summary

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final int
    The maximum depth/coverage to consider.
    double
    The fold over-coverage necessary to raise 80% of bases to the mean coverage level.
    double
    The fold over-coverage necessary to raise 90% of bases to the mean coverage level.
    double
    The fold over-coverage necessary to raise 95% of bases to the mean coverage level.
    long
    The number of non-N bases in the genome reference over which coverage will be evaluated.
    double
    The Phred Scaled Q Score of the theoretical HET SNP sensitivity.
    double
    The theoretical HET SNP sensitivity.
    protected final htsjdk.samtools.util.Histogram<Integer>
    Count of sites with a given depth of coverage.
    protected htsjdk.samtools.util.IntervalList
    The intervals over which this metric was computed.
    double
    The median absolute deviation of coverage of the genome after all filters are applied.
    double
    The mean coverage in bases of the genome territory, after all filters are applied.
    double
    The median coverage in bases of the genome territory, after all filters are applied.
    double
    The fraction of bases that attained at least 100X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 10X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 15X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 1X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 20X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 25X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 30X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 40X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 50X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 5X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 60X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 70X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 80X sequence coverage in post-filtering bases.
    double
    The fraction of bases that attained at least 90X sequence coverage in post-filtering bases.
    double
    The fraction of aligned bases that were filtered out because they were in reads with mapping quality 0 and the looked like adapter reads.
    double
    The fraction of aligned bases that were filtered out because they were of low base quality (lower than MIN_BASE_QUALITY).
    double
    The fraction of aligned bases that were filtered out because they would have raised coverage above COVERAGE_CAP.
    double
    The fraction of aligned bases that were filtered out because they were in reads marked as duplicates.
    double
    The fraction of aligned bases that were filtered out because they were in reads with low mapping quality (lower than MIN_MAPPING_QUALITY).
    double
    The fraction of aligned bases that were filtered out because they were the second observation from an insert with overlapping reads.
    double
    The total fraction of aligned bases excluded due to all filters.
    double
    The fraction of aligned bases that were filtered out because they were in reads without a mapped mate pair.
    double
    The standard deviation of coverage of the genome after all filters are applied.
    protected final int
    The sample size used for theoretical het sensitivity.
    protected final htsjdk.samtools.util.Histogram<Integer>
    The count of bases observed with a given base quality.
    protected final htsjdk.samtools.util.Histogram<Integer>
    Count of sites with a given depth of coverage.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Create an instance of this metric that is not mergeable.
    WgsMetrics(htsjdk.samtools.util.IntervalList intervals, htsjdk.samtools.util.Histogram<Integer> highQualityDepthHistogram, htsjdk.samtools.util.Histogram<Integer> unfilteredDepthHistogram, double pctExcludedByAdapter, double pctExcludedByMapq, double pctExcludedByDupes, double pctExcludedByPairing, double pctExcludedByBaseq, double pctExcludedByOverlap, double pctExcludedByCapping, double pctExcludeTotal, int coverageCap, htsjdk.samtools.util.Histogram<Integer> unfilteredBaseQHistogram, int theoreticalHetSensitivitySampleSize)
    Create an instance of this metric that is mergeable.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Placeholder method that will calculate the derived fields from the other ones.
    Merges the various PCT_EXC_* metrics.

    Methods inherited from class picard.analysis.MergeableMetricBase

    canMerge, merge, mergeIfCan

    Methods inherited from class htsjdk.samtools.metrics.MetricBase

    equals, hashCode, toString

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • intervals

      protected htsjdk.samtools.util.IntervalList intervals
      The intervals over which this metric was computed.
    • highQualityDepthHistogram

      protected final htsjdk.samtools.util.Histogram<Integer> highQualityDepthHistogram
      Count of sites with a given depth of coverage. Excludes bases with quality below MINIMUM_BASE_QUALITY
    • unfilteredDepthHistogram

      protected final htsjdk.samtools.util.Histogram<Integer> unfilteredDepthHistogram
      Count of sites with a given depth of coverage. Includes all but quality 2 bases
    • unfilteredBaseQHistogram

      protected final htsjdk.samtools.util.Histogram<Integer> unfilteredBaseQHistogram
      The count of bases observed with a given base quality.
    • coverageCap

      protected final int coverageCap
      The maximum depth/coverage to consider.
    • theoreticalHetSensitivitySampleSize

      protected final int theoreticalHetSensitivitySampleSize
      The sample size used for theoretical het sensitivity.
    • GENOME_TERRITORY

      public long GENOME_TERRITORY
      The number of non-N bases in the genome reference over which coverage will be evaluated.
    • MEAN_COVERAGE

      public double MEAN_COVERAGE
      The mean coverage in bases of the genome territory, after all filters are applied.
    • SD_COVERAGE

      public double SD_COVERAGE
      The standard deviation of coverage of the genome after all filters are applied.
    • MEDIAN_COVERAGE

      public double MEDIAN_COVERAGE
      The median coverage in bases of the genome territory, after all filters are applied.
    • MAD_COVERAGE

      public double MAD_COVERAGE
      The median absolute deviation of coverage of the genome after all filters are applied.
    • PCT_EXC_ADAPTER

      public double PCT_EXC_ADAPTER
      The fraction of aligned bases that were filtered out because they were in reads with mapping quality 0 and the looked like adapter reads.
    • PCT_EXC_MAPQ

      public double PCT_EXC_MAPQ
      The fraction of aligned bases that were filtered out because they were in reads with low mapping quality (lower than MIN_MAPPING_QUALITY).
    • PCT_EXC_DUPE

      public double PCT_EXC_DUPE
      The fraction of aligned bases that were filtered out because they were in reads marked as duplicates.
    • PCT_EXC_UNPAIRED

      public double PCT_EXC_UNPAIRED
      The fraction of aligned bases that were filtered out because they were in reads without a mapped mate pair.
    • PCT_EXC_BASEQ

      public double PCT_EXC_BASEQ
      The fraction of aligned bases that were filtered out because they were of low base quality (lower than MIN_BASE_QUALITY).
    • PCT_EXC_OVERLAP

      public double PCT_EXC_OVERLAP
      The fraction of aligned bases that were filtered out because they were the second observation from an insert with overlapping reads.
    • PCT_EXC_CAPPED

      public double PCT_EXC_CAPPED
      The fraction of aligned bases that were filtered out because they would have raised coverage above COVERAGE_CAP.
    • PCT_EXC_TOTAL

      public double PCT_EXC_TOTAL
      The total fraction of aligned bases excluded due to all filters.
    • PCT_1X

      public double PCT_1X
      The fraction of bases that attained at least 1X sequence coverage in post-filtering bases.
    • PCT_5X

      public double PCT_5X
      The fraction of bases that attained at least 5X sequence coverage in post-filtering bases.
    • PCT_10X

      public double PCT_10X
      The fraction of bases that attained at least 10X sequence coverage in post-filtering bases.
    • PCT_15X

      public double PCT_15X
      The fraction of bases that attained at least 15X sequence coverage in post-filtering bases.
    • PCT_20X

      public double PCT_20X
      The fraction of bases that attained at least 20X sequence coverage in post-filtering bases.
    • PCT_25X

      public double PCT_25X
      The fraction of bases that attained at least 25X sequence coverage in post-filtering bases.
    • PCT_30X

      public double PCT_30X
      The fraction of bases that attained at least 30X sequence coverage in post-filtering bases.
    • PCT_40X

      public double PCT_40X
      The fraction of bases that attained at least 40X sequence coverage in post-filtering bases.
    • PCT_50X

      public double PCT_50X
      The fraction of bases that attained at least 50X sequence coverage in post-filtering bases.
    • PCT_60X

      public double PCT_60X
      The fraction of bases that attained at least 60X sequence coverage in post-filtering bases.
    • PCT_70X

      public double PCT_70X
      The fraction of bases that attained at least 70X sequence coverage in post-filtering bases.
    • PCT_80X

      public double PCT_80X
      The fraction of bases that attained at least 80X sequence coverage in post-filtering bases.
    • PCT_90X

      public double PCT_90X
      The fraction of bases that attained at least 90X sequence coverage in post-filtering bases.
    • PCT_100X

      public double PCT_100X
      The fraction of bases that attained at least 100X sequence coverage in post-filtering bases.
    • FOLD_80_BASE_PENALTY

      public double FOLD_80_BASE_PENALTY
      The fold over-coverage necessary to raise 80% of bases to the mean coverage level.
    • FOLD_90_BASE_PENALTY

      public double FOLD_90_BASE_PENALTY
      The fold over-coverage necessary to raise 90% of bases to the mean coverage level.
    • FOLD_95_BASE_PENALTY

      public double FOLD_95_BASE_PENALTY
      The fold over-coverage necessary to raise 95% of bases to the mean coverage level.
    • HET_SNP_SENSITIVITY

      public double HET_SNP_SENSITIVITY
      The theoretical HET SNP sensitivity.
    • HET_SNP_Q

      public double HET_SNP_Q
      The Phred Scaled Q Score of the theoretical HET SNP sensitivity.
  • Constructor Details

    • WgsMetrics

      public WgsMetrics()
      Create an instance of this metric that is not mergeable.
    • WgsMetrics

      public WgsMetrics(htsjdk.samtools.util.IntervalList intervals, htsjdk.samtools.util.Histogram<Integer> highQualityDepthHistogram, htsjdk.samtools.util.Histogram<Integer> unfilteredDepthHistogram, double pctExcludedByAdapter, double pctExcludedByMapq, double pctExcludedByDupes, double pctExcludedByPairing, double pctExcludedByBaseq, double pctExcludedByOverlap, double pctExcludedByCapping, double pctExcludeTotal, int coverageCap, htsjdk.samtools.util.Histogram<Integer> unfilteredBaseQHistogram, int theoreticalHetSensitivitySampleSize)
      Create an instance of this metric that is mergeable.
      Parameters:
      highQualityDepthHistogram - the count of genomic positions observed for each observed depth. Excludes bases with quality below MINIMUM_BASE_QUALITY.
      unfilteredDepthHistogram - the depth histogram that includes all but quality 2 bases.
      pctExcludedByAdapter - the fraction of aligned bases that were filtered out because they were in reads with 0 mapping quality that looked like adapter sequence.
      pctExcludedByMapq - the fraction of aligned bases that were filtered out because they were in reads with low mapping quality.
      pctExcludedByDupes - the fraction of aligned bases that were filtered out because they were in reads marked as duplicates.
      pctExcludedByPairing - the fraction of bases that were filtered out because they were in reads without a mapped mate pair.
      pctExcludedByBaseq - the fraction of aligned bases that were filtered out because they were of low base quality.
      pctExcludedByOverlap - the fraction of aligned bases that were filtered out because they were the second observation from an insert with overlapping reads.
      pctExcludedByCapping - the fraction of aligned bases that were filtered out because they would have raised coverage above the capped value.
      pctExcludeTotal - the fraction of bases excluded across all filters.
      coverageCap - Treat positions with coverage exceeding this value as if they had coverage at this value.
      unfilteredBaseQHistogram - the count of bases observed with a given quality. Includes all but quality 2 bases.
      theoreticalHetSensitivitySampleSize - the sample size used for theoretical het sensitivity sampling.
  • Method Details

    • merge

      Merges the various PCT_EXC_* metrics.
      Overrides:
      merge in class MergeableMetricBase
      Parameters:
      other - metric to merge into this one.
      Returns:
      result of merging, also known as "this"
    • calculateDerivedFields

      public void calculateDerivedFields()
      Description copied from class: MergeableMetricBase
      Placeholder method that will calculate the derived fields from the other ones. Classes that are derived from non-trivial derived classes should consider calling super.calculateDerivedFields() as well. Fields whose value will change due to this method should be annotated with NoMergingKeepsValue.
      Overrides:
      calculateDerivedFields in class MergeableMetricBase