calculateBamCoverageByInterval: Function to calculate coverage from BAM file

View source: R/calculateBamCoverageByInterval.R

calculateBamCoverageByIntervalR Documentation

Function to calculate coverage from BAM file

Description

Takes a BAM file and an interval file as input and returns coverage for each interval. Coverage should be then GC-normalized using the correctCoverageBias function before determining purity and ploidy with runAbsoluteCN. Uses the scanBam function and applies low quality, duplicate reads as well as secondary alignment filters.

Usage

calculateBamCoverageByInterval(
  bam.file,
  interval.file,
  output.file = NULL,
  index.file = bam.file,
  keep.duplicates = FALSE,
  chunks = 20,
  ...
)

Arguments

bam.file

Filename of a BAM file.

interval.file

File specifying the intervals. Interval is expected in first column in format CHR:START-END.

output.file

Optionally, write minimal coverage file. Can be read with the readCoverageFile function.

index.file

The bai index. This is expected without the .bai file suffix, see ?scanBam.

keep.duplicates

Keep or remove duplicated reads.

chunks

Split interval.file into specified number of chunks to reduce memory usage.

...

Additional parameters passed to ScanBamParam.

Value

Returns total and average coverage by intervals.

Author(s)

Markus Riester

See Also

preprocessIntervals correctCoverageBias runAbsoluteCN

Examples


bam.file <- system.file("extdata", "ex1.bam", package = "PureCN",
    mustWork = TRUE)
interval.file <- system.file("extdata", "ex1_intervals.txt",
    package = "PureCN", mustWork = TRUE)

# Calculate raw coverage from BAM file. These need to be corrected for
# GC-bias using the correctCoverageBias function before determining purity
# and ploidy.
coverage <- calculateBamCoverageByInterval(bam.file = bam.file,
    interval.file = interval.file)


lima1/PureCN documentation built on Sept. 17, 2024, 5:48 a.m.