Package picard.analysis
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
-
Nested classes/interfaces inherited from class picard.analysis.MergeableMetricBase
MergeableMetricBase.MergeByAdding, MergeableMetricBase.MergeByAssertEquals, MergeableMetricBase.MergingIsManual, MergeableMetricBase.NoMergingIsDerived, MergeableMetricBase.NoMergingKeepsValue
-
-
Field Summary
Fields Modifier and Type Field Description protected int
coverageCap
The maximum depth/coverage to consider.double
FOLD_80_BASE_PENALTY
The fold over-coverage necessary to raise 80% of bases to the mean coverage level.double
FOLD_90_BASE_PENALTY
The fold over-coverage necessary to raise 90% of bases to the mean coverage level.double
FOLD_95_BASE_PENALTY
The fold over-coverage necessary to raise 95% of bases to the mean coverage level.long
GENOME_TERRITORY
The number of non-N bases in the genome reference over which coverage will be evaluated.double
HET_SNP_Q
The Phred Scaled Q Score of the theoretical HET SNP sensitivity.double
HET_SNP_SENSITIVITY
The theoretical HET SNP sensitivity.protected htsjdk.samtools.util.Histogram<Integer>
highQualityDepthHistogram
Count of sites with a given depth of coverage.protected htsjdk.samtools.util.IntervalList
intervals
The intervals over which this metric was computed.double
MAD_COVERAGE
The median absolute deviation of coverage of the genome after all filters are applied.double
MEAN_COVERAGE
The mean coverage in bases of the genome territory, after all filters are applied.double
MEDIAN_COVERAGE
The median coverage in bases of the genome territory, after all filters are applied.double
PCT_100X
The fraction of bases that attained at least 100X sequence coverage in post-filtering bases.double
PCT_10X
The fraction of bases that attained at least 10X sequence coverage in post-filtering bases.double
PCT_15X
The fraction of bases that attained at least 15X sequence coverage in post-filtering bases.double
PCT_1X
The fraction of bases that attained at least 1X sequence coverage in post-filtering bases.double
PCT_20X
The fraction of bases that attained at least 20X sequence coverage in post-filtering bases.double
PCT_25X
The fraction of bases that attained at least 25X sequence coverage in post-filtering bases.double
PCT_30X
The fraction of bases that attained at least 30X sequence coverage in post-filtering bases.double
PCT_40X
The fraction of bases that attained at least 40X sequence coverage in post-filtering bases.double
PCT_50X
The fraction of bases that attained at least 50X sequence coverage in post-filtering bases.double
PCT_5X
The fraction of bases that attained at least 5X sequence coverage in post-filtering bases.double
PCT_60X
The fraction of bases that attained at least 60X sequence coverage in post-filtering bases.double
PCT_70X
The fraction of bases that attained at least 70X sequence coverage in post-filtering bases.double
PCT_80X
The fraction of bases that attained at least 80X sequence coverage in post-filtering bases.double
PCT_90X
The fraction of bases that attained at least 90X sequence coverage in post-filtering bases.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.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).double
PCT_EXC_CAPPED
The fraction of aligned bases that were filtered out because they would have raised coverage above COVERAGE_CAP.double
PCT_EXC_DUPE
The fraction of aligned bases that were filtered out because they were in reads marked as duplicates.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).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.double
PCT_EXC_TOTAL
The total fraction of aligned bases excluded due to all filters.double
PCT_EXC_UNPAIRED
The fraction of aligned bases that were filtered out because they were in reads without a mapped mate pair.double
SD_COVERAGE
The standard deviation of coverage of the genome after all filters are applied.protected int
theoreticalHetSensitivitySampleSize
The sample size used for theoretical het sensitivity.protected htsjdk.samtools.util.Histogram<Integer>
unfilteredBaseQHistogram
The count of bases observed with a given base quality.protected htsjdk.samtools.util.Histogram<Integer>
unfilteredDepthHistogram
Count of sites with a given depth of coverage.
-
Constructor Summary
Constructors Constructor Description WgsMetrics()
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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
calculateDerivedFields()
Placeholder method that will calculate the derived fields from the other ones.MergeableMetricBase
merge(MergeableMetricBase other)
Merges the various PCT_EXC_* metrics.-
Methods inherited from class picard.analysis.MergeableMetricBase
canMerge, merge, mergeIfCan
-
-
-
-
Field Detail
-
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 Detail
-
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 Detail
-
merge
public MergeableMetricBase merge(MergeableMetricBase other)
Merges the various PCT_EXC_* metrics.- Overrides:
merge
in classMergeableMetricBase
- 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 withNoMergingKeepsValue
.- Overrides:
calculateDerivedFields
in classMergeableMetricBase
-
-