Learn R Programming

derfinder (version 1.6.4)

mergeResults: Merge results from different chromosomes

Description

This function merges the results from running analyzeChr on several chromosomes and assigns genomic states using annotateRegions. It re-calculates the p-values and q-values using the pooled areas from the null regions from all chromosomes. Once the results have been merged, derfinderReport::generateReport can be used to generate an HTML report of the results. The derfinderReport package is available at https://github.com/lcolladotor/derfinderReport.

Usage

mergeResults(chrs = c(1:22, "X", "Y"), prefix = ".",
  significantCut = c(0.05, 0.1), genomicState, minoverlap = 20,
  mergePrep = FALSE, ...)

Arguments

chrs
The chromosomes of the files to be merged.
prefix
The main data directory path, which can be useful if analyzeChr is used for several parameters and the results are saved in different directories.
significantCut
A vector of length two specifiying the cutoffs used to determine significance. The first element is used to determine significance for the P-values and FWER adjusted P-values, while the second element is used for the Q-values (FDR adjusted P-values) similar to calculatePvalues.
genomicState
A GRanges object created with makeGenomicState. It can be either the genomicState$fullGenome or genomicState$codingGenome component.
minoverlap
Determines the mininum overlap needed when annotating regions with annotateRegions.
mergePrep
If TRUE the output from preprocessCoverage is merged.
...
Arguments passed to other methods and/or advanced arguments.

Value

  • Seven Rdata files. [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Details

If you want to calculate the FWER adjusted P-values, supply optionsStats which is produced by analyzeChr.

See Also

analyzeChr, calculatePvalues, annotateRegions

Examples

Run this code
## The output will be saved in the 'generateReport-example' directory
dir.create('generateReport-example', showWarnings = FALSE, recursive = TRUE)

## For convenience, the derfinder output has been pre-computed
file.copy(system.file(file.path('extdata', 'chr21'), package='derfinder', 
mustWork=TRUE), 'generateReport-example', recursive=TRUE)

## Merge the results from the different chromosomes. In this case, there's 
## only one: chr21
mergeResults(chrs='21', prefix='generateReport-example', 
genomicState=genomicState$fullGenome)

## You can then explore the wallclock time spent on each step
load(file.path('generateReport-example', 'fullRegions.Rdata'))

## Process the time info
time <- lapply(fullTime, function(x) data.frame(diff(x)))
time <- do.call(rbind, time)
colnames(time) <- 'sec'
time$sec <- as.integer(round(time$sec))
time$min <- time$sec / 60
time$chr <- paste0('chr', gsub('\\..*', '', rownames(time)))
time$step <- gsub('.*\\.', '', rownames(time))
rownames(time) <- seq_len(nrow(time))

## Make plot
library('ggplot2')
ggplot(time, aes(x=step, y=min, colour=chr)) + geom_point() + 
    labs(title='Wallclock time by step') + 
    scale_colour_discrete(limits=chrs) + 
    scale_x_discrete(limits=names(fullTime[[1]])[-1]) + ylab('Time (min)') + 
    xlab('Step')

Run the code above in your browser using DataLab