Identify regions data by a coverage filter and get a count matrix
Given a set of un-filtered coverage data (see fullCoverage), create candidate regions by applying a cutoff on the coverage values, and obtain a count matrix where the number of rows corresponds to the number of candidate regions and the number of columns corresponds to the number of samples. The values are the mean coverage for a given sample for a given region.
A list where each element is the result from
loadCoverage used with
The base-pair level cutoff to use. It's behavior is controlled
The width of the reads used. Either a vector of length 1 or length equal to the number of samples.
This controls whether to run filterData or not. If
Arguments passed to other methods and/or advanced arguments. Advanced arguments:
Passed to filterData, findRegions and define_cluster.
Note that filterData is used internally
by loadCoverage (and hence
This function uses several other derfinder-package functions. Inspect the code if interested.
You should use at most one core per chromosome.
A list with one entry per chromosome. Then per chromosome, a list with three components.
A set of regions based on the coverage filter cutoff as returned by findRegions.
A list with one element per region. Each element is a matrix with numbers of rows equal to the number of base pairs in the region and number of columns equal to the number of samples. It contains the base-level coverage information for the regions. Only returned when
returnBP = TRUE.
A matrix with the mean coverage by sample for each candidate region.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
## Create some toy data library('IRanges') x <- Rle(round(runif(1e4, max=10))) y <- Rle(round(runif(1e4, max=10))) z <- Rle(round(runif(1e4, max=10))) fullCov <- list('chr21' = DataFrame(x, y, z)) ## Calculate a proxy of library size libSize <- sapply(fullCov$chr21, sum) ## Run region matrix normalizing the coverage regionMat <- regionMatrix(fullCov = fullCov, maxRegionGap = 10L, maxClusterGap = 300L, L = 36, totalMapped = libSize, targetSize = 4e4) ## Not run: ## You can alternatively use filterData() on fullCov to reduce the required ## memory before using regionMatrix(). This can be useful when mc.cores > 1 filteredCov <- lapply(fullCov, filterData, returnMean=TRUE, filter='mean', cutoff=5, totalMapped = libSize, targetSize = 4e4) regionMat2 <- regionMatrix(filteredCov, maxRegionGap = 10L, maxClusterGap = 300L, L = 36, runFilter=FALSE) ## End(Not run)
Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.