Parses and tidies DRAGEN mapping/alignment outputs: mapping metrics, run-time metrics, and the fragment-length histogram.
Super classes
nemo::Tool -> tidydragen::DragenTool -> DragenMap
Public fields
flat_tidy_names(
logical(1))TRUE: fan-out sub-tables are named<tool>_<tidy_name>(parser token dropped). Needed for theumimain/umihistandgcmain/gcbiassplits.
Methods
Method new()
Create a new DragenMap object.
Usage
DragenMap$new(path = NULL, files_tbl = NULL)Arguments
path(
character(1))
Output directory of tool. Iffiles_tblis supplied, this is ignored.files_tbl(
tibble(n))
Tibble of files fromnemo::list_files_dir().
Method tidy_metrics()
Tidy mapping_metrics.csv. Both id columns retained
(drop_constant = character()).
Method tidy_umimain()
Tidy umi_metrics.csv into umimain (summary, wide) and
umihist (the {a|b|c} histograms, long).
Method tidy_gcmain()
Tidy gc_metrics.csv into gcmain (GC METRICS SUMMARY, wide)
and gcbias (per-GC-window GC BIAS DETAILS, long — GC 0-100).
Method tidy_time()
Tidy time_metrics.csv, using seconds (not HH:MM:SS) as the
metric value and surfacing total_runtime first.
Examples
cls <- DragenMap; tool <- "dragenmap"
indir <- system.file("extdata", tool, package = "tidydragen")
odir <- tempdir()
obj <- cls$new(indir)
obj$run(output_dir = odir, format = "parquet", input_id = "run1")
(lf <- list.files(odir, pattern = "dragenmap_.*parquet", full.names = FALSE))
#> [1] "sampleA_dragenmap_fraglenhist.parquet"
#> [2] "sampleA_dragenmap_gcbias.parquet"
#> [3] "sampleA_dragenmap_gcmain.parquet"
#> [4] "sampleA_dragenmap_metrics.parquet"
#> [5] "sampleA_dragenmap_time.parquet"
#> [6] "sampleA_dragenmap_trimmer.parquet"
#> [7] "sampleA_dragenmap_umihist.parquet"
#> [8] "sampleA_dragenmap_umimain.parquet"
