public class DuplicationMetrics extends MergeableMetricBase
MergeableMetricBase.MergeByAdding, MergeableMetricBase.MergeByAssertEquals, MergeableMetricBase.MergingIsManual, MergeableMetricBase.NoMergingIsDerived, MergeableMetricBase.NoMergingKeepsValue
Modifier and Type | Field and Description |
---|---|
java.lang.Long |
ESTIMATED_LIBRARY_SIZE
The estimated number of unique molecules in the library based on PE duplication.
|
java.lang.String |
LIBRARY
The library on which the duplicate marking was performed.
|
java.lang.Double |
PERCENT_DUPLICATION
The fraction of mapped sequence that is marked as duplicate.
|
long |
READ_PAIR_DUPLICATES
The number of read pairs that were marked as duplicates.
|
long |
READ_PAIR_OPTICAL_DUPLICATES
The number of read pairs duplicates that were caused by optical duplication.
|
long |
READ_PAIRS_EXAMINED
The number of mapped read pairs examined.
|
long |
SECONDARY_OR_SUPPLEMENTARY_RDS
The number of reads that were either secondary or supplementary
|
long |
UNMAPPED_READS
The total number of unmapped reads examined.
|
long |
UNPAIRED_READ_DUPLICATES
The number of fragments that were marked as duplicates.
|
long |
UNPAIRED_READS_EXAMINED
The number of mapped reads examined which did not have a mapped mate pair,
either because the read is unpaired, or the read is paired to an unmapped mate.
|
Constructor and Description |
---|
DuplicationMetrics() |
Modifier and Type | Method and Description |
---|---|
void |
calculateDerivedFields()
Fills in the ESTIMATED_LIBRARY_SIZE based on the paired read data examined where
possible and the PERCENT_DUPLICATION.
|
void |
calculateDerivedMetrics()
Deprecated.
|
htsjdk.samtools.util.Histogram<java.lang.Double> |
calculateRoiHistogram()
Calculates a histogram using the estimateRoi method to estimate the effective yield
doing x sequencing for x=1..10.
|
static java.lang.Long |
estimateLibrarySize(long readPairs,
long uniqueReadPairs)
Estimates the size of a library based on the number of paired end molecules observed
and the number of unique pairs observed.
|
static double |
estimateRoi(long estimatedLibrarySize,
double x,
long pairs,
long uniquePairs)
Estimates the ROI (return on investment) that one would see if a library was sequenced to
x higher coverage than the observed coverage.
|
static void |
main(java.lang.String[] args) |
canMerge, merge, merge, mergeIfCan
public java.lang.String LIBRARY
public long UNPAIRED_READS_EXAMINED
public long READ_PAIRS_EXAMINED
public long SECONDARY_OR_SUPPLEMENTARY_RDS
public long UNMAPPED_READS
public long UNPAIRED_READ_DUPLICATES
public long READ_PAIR_DUPLICATES
public long READ_PAIR_OPTICAL_DUPLICATES
public java.lang.Double PERCENT_DUPLICATION
public java.lang.Long ESTIMATED_LIBRARY_SIZE
public void calculateDerivedFields()
calculateDerivedFields
in class MergeableMetricBase
@Deprecated public void calculateDerivedMetrics()
Deprecated, use calculateDerivedFields()
instead.
public static java.lang.Long estimateLibrarySize(long readPairs, long uniqueReadPairs)
Based on the Lander-Waterman equation that states: C/X = 1 - exp( -N/X ) where X = number of distinct molecules in library N = number of read pairs C = number of distinct fragments observed in read pairs
public static double estimateRoi(long estimatedLibrarySize, double x, long pairs, long uniquePairs)
estimatedLibrarySize
- the estimated number of molecules in the libraryx
- the multiple of sequencing to be simulated (i.e. how many X sequencing)pairs
- the number of pairs observed in the actual sequencinguniquePairs
- the number of unique pairs observed in the actual sequencingpublic htsjdk.samtools.util.Histogram<java.lang.Double> calculateRoiHistogram()
public static void main(java.lang.String[] args)