Last data update: 2014.03.03

R: Determine false discovery rate
calculateFDRsR Documentation

Determine false discovery rate

Description

This function calculates the false discovery rate (FDR) based on randomized Bis-seq data.

Usage

calculateFDRs(m, CGIs, PMDs = NA, pdfFilename=NULL, num.cores = 1,
nCpG.smoothing = 3, meth.cutoffs = seq(0.3, 0.7, by=0.1), nCpG.cutoffs =
seq(1, 6, by=1), minCover = 5)

Arguments

m

GRanges object containing the methylation data.

CGIs

A GRanges object of CpG island coordinates. All CpGs overlapping CpG islands will be removed for the randomization.

PMDs

The GRanges object of the PMDs. Set to either the return value of the function segmentPMDs (see example) or to NA (default) if there are no PMDs.

pdfFilename

Name of the pdf file in which the figure is saved. If no name is provided (default), the figure is printed to the screen.

num.cores

Number of cores used for the calculations.

nCpG.smoothing

The number of consecutive CpGs that the methylation levels are averaged over.

meth.cutoffs

A vector containing the cut-offs in methylation for which the FDR should be calculated. Numbers must be between 0 and 1.

nCpG.cutoffs

A vector containing the cut-offs on the minimal number of CpGs per region for which the FDR should be calculated.

minCover

Only CpGs with a coverage of at least minCover reads will be used.

Value

A list containing a matrix with FDR values and a matrix with the number of inferred segments for each methylation cut-off (rows) and each cut-off on the minimal number of CpGs per region (columns). The function creates a figure showing the relationship between the methylation cut-off, the cut-off on the minimal number of CpGs per region, the number of inferred segments and the FDR. The figure is either printed to the screen (default) or saved as a pdf if a filename is provided.

Author(s)

Lukas Burger lukas.burger@fmi.ch

Examples


library(MethylSeekR)

# get chromosome lengths
library("BSgenome.Hsapiens.UCSC.hg18")
sLengths=seqlengths(Hsapiens)

# read methylation data
methFname <- system.file("extdata", "Lister2009_imr90_hg18_chr22.tab",
package="MethylSeekR")
meth.gr <- readMethylome(FileName=methFname, seqLengths=sLengths)

#load CpG islands
library(rtracklayer)
session <- browserSession()
genome(session) <- "hg18"
query <- ucscTableQuery(session, "cpgIslandExt")
CpGislands.gr <- track(query)
genome(CpGislands.gr) <- NA
CpGislands.gr <- resize(CpGislands.gr, 5000, fix="center")

#calculate FDRs, assuming no PMDs
stats <- calculateFDRs(m=meth.gr, CGIs=CpGislands.gr)

Results


R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(MethylSeekR)
Loading required package: rtracklayer
Loading required package: GenomicRanges
Loading required package: BiocGenerics
Loading required package: parallel

Attaching package: 'BiocGenerics'

The following objects are masked from 'package:parallel':

    clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
    clusterExport, clusterMap, parApply, parCapply, parLapply,
    parLapplyLB, parRapply, parSapply, parSapplyLB

The following objects are masked from 'package:stats':

    IQR, mad, xtabs

The following objects are masked from 'package:base':

    Filter, Find, Map, Position, Reduce, anyDuplicated, append,
    as.data.frame, cbind, colnames, do.call, duplicated, eval, evalq,
    get, grep, grepl, intersect, is.unsorted, lapply, lengths, mapply,
    match, mget, order, paste, pmax, pmax.int, pmin, pmin.int, rank,
    rbind, rownames, sapply, setdiff, sort, table, tapply, union,
    unique, unsplit

Loading required package: S4Vectors
Loading required package: stats4

Attaching package: 'S4Vectors'

The following objects are masked from 'package:base':

    colMeans, colSums, expand.grid, rowMeans, rowSums

Loading required package: IRanges
Loading required package: GenomeInfoDb
Loading required package: mhsmm
Loading required package: mvtnorm
> png(filename="/home/ddbj/snapshot/RGM3/R_BC/result/MethylSeekR/calculateFDRs.Rd_%03d_medium.png", width=480, height=480)
> ### Name: calculateFDRs
> ### Title: Determine false discovery rate
> ### Aliases: calculateFDRs
> 
> ### ** Examples
> 
> 
> library(MethylSeekR)
> 
> # get chromosome lengths
> library("BSgenome.Hsapiens.UCSC.hg18")
Loading required package: BSgenome
Loading required package: Biostrings
Loading required package: XVector
> sLengths=seqlengths(Hsapiens)
> 
> # read methylation data
> methFname <- system.file("extdata", "Lister2009_imr90_hg18_chr22.tab",
+ package="MethylSeekR")
> meth.gr <- readMethylome(FileName=methFname, seqLengths=sLengths)
reading methylome data
Read 200000 records
> 
> #load CpG islands
> library(rtracklayer)
> session <- browserSession()
> genome(session) <- "hg18"
Error in `genome<-`(`*tmp*`, value = "hg18") : 
  Failed to set session genome to 'hg18'
Calls: genome<- -> genome<-
Execution halted