filterMT: Filter SummarizedExperiment or DataFrame values based on its...

Description Usage Arguments Details Value Examples

View source: R/filterMT.R

Description

Griffin et al. (Genetics in Medicine 2014) recommends 20x coverage for mtDNA sequencing to have comparable error rates to Sanger sequencing. By default, that is the cutoff applied here to ensure halfway decent variant annotation.

Usage

1
filterMT(DFSE, minCovg = 20, fpFilter = FALSE, NuMT = FALSE)

Arguments

DFSE

a DataFrame/SummarizedExperiment with colData()$'mtCovg'

minCovg

minimum covg (20, cf. Griffin, Genetics in Medicine 2014)

fpFilter

apply Triska's homopolymer false positive filter? (FALSE)

NuMT

apply the 0.03 VAF NuMT filter from Ju (GR 2015)? (FALSE)

Details

Triska (Cancer Res, in revision) suggests a small number of masked regions where homopolymers can be a problem; these are avoided if fpFilter

The NuMT filtration step (Ju, in eLife 2014, suggests a variant allele cutoff of 0.03 to avoid false positive calls from nuclear-mitochondrial translocated or 'NuMT' fragments) is also a useful tool to cut down on nonsensical calls, although it may be important to use caution as low heteroplasmy can also resolve into apparent near-homoplasmy at the single-cell level, at least in our (TJT & co) experience.

As a consequence of the Wild West nature for published methods of high- throughput mitochondrial sequence variant analysis at the time of writing (2018), the default for this function is to filter on coverage only, as the user is expected to determine what additional filters to apply. We could envision changing these defaults down the road as standards congeal.

If DFSE is an MVRanges[List], the function will call filterMTvars instead.

Value

a filtered SE or data.frame

Examples

1
filterMT(data.frame(sample="foo", mtCovg=1000))

MTseeker documentation built on Oct. 31, 2019, 3:20 a.m.