Learn R Programming

derfinder (version 1.6.4)

fullCoverage: Load the unfiltered coverage information from a group of BAM files and a list of chromosomes

Description

For a group of samples this function reads the coverage information for several chromosomes directly from the BAM files. Per chromosome, it merges the unfiltered coverage by sample into a DataFrame. The end result is a list with one such DataFrame objects per chromosome.

Usage

fullCoverage(files, chrs, bai = NULL, chrlens = NULL, outputs = NULL,
  cutoff = NULL, ...)

Arguments

files
A character vector with the full path to the sample BAM files (or BigWig files). The names are used for the column names of the DataFrame. Check rawFiles for constructing files. files can also be a BamFileList object created with BamFileList or a BigWigFileList object created with BigWigFileList.
chrs
The chromosome of the files to read. The format has to match the one used in the input files.
bai
The full path to the BAM index files. If NULL it is assumed that the BAM index files are in the same location as the BAM files and that they have the .bai extension. Ignored if files is a BamFileList object.
chrlens
The chromosome lengths in base pairs. If it's NULL, the chromosome length is extracted from the BAM files. Otherwise, it should have the same length as chrs.
outputs
This argument is passed to the output argument of loadCoverage. If NULL or 'auto' it is then recycled.
cutoff
This argument is passed to filterData.
...
Arguments passed to other methods and/or advanced arguments.

Value

  • A list with one element per chromosome. Each element is a DataFrame with the coverage information produced by loadCoverage.

See Also

loadCoverage, filterData

Examples

Run this code
datadir <- system.file('extdata', 'genomeData', package='derfinder')
files <- rawFiles(datadir=datadir, samplepatt='*accepted_hits.bam$', 
    fileterm=NULL)
## Shorten the column names
names(files) <- gsub('_accepted_hits.bam', '', names(files))

## Read and filter the data, only for 1 file
fullCov <- fullCoverage(files=files[1], chrs=c('21', '22'))
fullCov

## You can then use filterData() to filter the data if you want to. 
## Use bplapply() if you want to do so with multiple cores as shown below.
library('BiocParallel')
p <- SnowParam(2L, outfile = Sys.getenv('SGE_STDERR_PATH'))
bplapply(fullCov, function(x) {
    library('derfinder'); filterData(x, cutoff=0) }, BPPARAM = p)

Run the code above in your browser using DataLab