Nothing
## ----'installDer', eval = FALSE-----------------------------------------------
# if (!requireNamespace("BiocManager", quietly = TRUE)) {
# install.packages("BiocManager")
# }
#
# BiocManager::install("derfinderPlot")
#
# ## Check that you have a valid Bioconductor installation
# BiocManager::valid()
## ----'citation'---------------------------------------------------------------
## Citation info
citation("derfinderPlot")
## ----vignetteSetup, echo=FALSE, message=FALSE, warning = FALSE----------------
## Track time spent on making the vignette
startTime <- Sys.time()
## Bib setup
library("RefManageR")
## Write bibliography information
bib <- c(
derfinderPlot = citation("derfinderPlot")[1],
BiocStyle = citation("BiocStyle"),
knitr = citation("knitr")[3],
RefManageR = citation("RefManageR")[1],
rmarkdown = citation("rmarkdown")[1],
derfinder = citation("derfinder")[1],
ggbio = citation("ggbio"),
brainspan = RefManageR::BibEntry(
bibtype = "Unpublished",
key = "brainspan",
title = "Atlas of the Developing Human Brain [Internet]. Funded by ARRA Awards 1RC2MH089921-01, 1RC2MH090047-01, and 1RC2MH089929-01.",
author = "BrainSpan", year = 2011, url = "http://www.brainspan.org/"
),
R = citation(),
IRanges = citation("IRanges"),
sessioninfo = citation("sessioninfo"),
testthat = citation("testthat"),
GenomeInfoDb = RefManageR::BibEntry(
bibtype = "manual",
key = "GenomeInfoDb",
author = "Sonali Arora and Martin Morgan and Marc Carlson and H. Pagès",
title = "GenomeInfoDb: Utilities for manipulating chromosome and other 'seqname' identifiers",
year = 2017, doi = "10.18129/B9.bioc.GenomeInfoDb"
),
GenomicRanges = citation("GenomicRanges"),
ggplot2 = citation("ggplot2"),
plyr = citation("plyr"),
RColorBrewer = citation("RColorBrewer"),
reshape2 = citation("reshape2"),
scales = citation("scales"),
biovizBase = citation("biovizBase"),
bumphunter = citation("bumphunter")[1],
TxDb.Hsapiens.UCSC.hg19.knownGene = citation("TxDb.Hsapiens.UCSC.hg19.knownGene"),
bumphunterPaper = RefManageR::BibEntry(
bibtype = "article",
key = "bumphunterPaper",
title = "Bump hunting to identify differentially methylated regions in epigenetic epidemiology studies",
author = "Jaffe, Andrew E and Murakami, Peter and Lee, Hwajin and Leek, Jeffrey T and Fallin, M Daniele and Feinberg, Andrew P and Irizarry, Rafael A",
year = 2012, journal = "International Journal of Epidemiology"
),
derfinderData = citation("derfinderData")
)
## ----'start'------------------------------------------------------------------
## Load libraries
suppressPackageStartupMessages(library("derfinder"))
library("derfinderData")
library("derfinderPlot")
## ----'phenoData', results = 'asis'--------------------------------------------
library("knitr")
## Get pheno table
pheno <- subset(brainspanPheno, structure_acronym == "A1C")
## Display the main information
p <- pheno[, -which(colnames(pheno) %in% c(
"structure_acronym",
"structure_name", "file"
))]
rownames(p) <- NULL
kable(p, format = "html", row.names = TRUE)
## ----'getData', eval = .Platform$OS.type != 'windows'-------------------------
## Determine the files to use and fix the names
files <- rawFiles(system.file("extdata", "A1C", package = "derfinderData"),
samplepatt = "bw", fileterm = NULL
)
names(files) <- gsub(".bw", "", names(files))
## Load the data from disk
system.time(fullCov <- fullCoverage(files = files, chrs = "chr21"))
## ----'getDataWindows', eval = .Platform$OS.type == 'windows', echo = FALSE----
# ## Load data in Windows case
# foo <- function() {
# load(system.file("extdata", "fullCov", "fullCovA1C.RData",
# package = "derfinderData"
# ))
# return(fullCovA1C)
# }
# fullCov <- foo()
## ----'webData', eval = FALSE--------------------------------------------------
# ## Determine the files to use and fix the names
# files <- pheno$file
# names(files) <- gsub(".A1C", "", pheno$lab)
#
# ## Load the data from the web
# system.time(fullCov <- fullCoverage(files = files, chrs = "chr21"))
## ----'models'-----------------------------------------------------------------
## Get some idea of the library sizes
sampleDepths <- sampleDepth(collapseFullCoverage(fullCov), 1)
## Define models
models <- makeModels(sampleDepths,
testvars = pheno$group,
adjustvars = pheno[, c("gender")]
)
## ----'analyze'----------------------------------------------------------------
## Filter coverage
filteredCov <- lapply(fullCov, filterData, cutoff = 3)
## Perform differential expression analysis
suppressPackageStartupMessages(library("bumphunter"))
system.time(results <- analyzeChr(
chr = "chr21", filteredCov$chr21,
models, groupInfo = pheno$group, writeOutput = FALSE,
cutoffFstat = 5e-02, nPermute = 20, seeds = 20140923 + seq_len(20)
))
## Quick access to the results
regions <- results$regions$regions
## Annotation database to use
suppressPackageStartupMessages(library("TxDb.Hsapiens.UCSC.hg19.knownGene"))
txdb <- TxDb.Hsapiens.UCSC.hg19.knownGene
## ----'plotOverview', bootstrap.show.warning=FALSE, fig.cap = "Location of the DERs in the genome. This plot is was designed for many chromosomes but only one is shown here for simplicity."----
## Q-values overview
plotOverview(regions = regions, annotation = results$annotation, type = "qval")
## ----'plotOverview2', bootstrap.show.warning=FALSE, fig.cap = "Location of the DERs in the genome and colored by annotation class. This plot is was designed for many chromosomes but only one is shown here for simplicity."----
## Annotation overview
plotOverview(
regions = regions, annotation = results$annotation,
type = "annotation"
)
## ----'regionData'-------------------------------------------------------------
## Get required information for the plots
annoRegs <- annotateRegions(regions, genomicState$fullGenome)
regionCov <- getRegionCoverage(fullCov, regions)
## ----'plotRegCov', fig.cap = paste0("Base-pair resolution plot of differentially expressed region ", 1:10, ".")----
## Plot top 10 regions
plotRegionCoverage(
regions = regions, regionCoverage = regionCov,
groupInfo = pheno$group, nearestAnnotation = results$annotation,
annotatedRegions = annoRegs, whichRegions = 1:10, txdb = txdb, scalefac = 1,
ask = FALSE, verbose = FALSE
)
## ----'plotCluster', warning=FALSE, fig.cap = "Cluster plot for cluster 1 using ggbio."----
## First cluster
plotCluster(
idx = 1, regions = regions, annotation = results$annotation,
coverageInfo = fullCov$chr21, txdb = txdb, groupInfo = pheno$group,
titleUse = "pval"
)
## ----'plotCluster2', bootstrap.show.warning=FALSE, fig.cap = "Cluster plot for cluster 2 using ggbio."----
## Second cluster
plotCluster(
idx = 2, regions = regions, annotation = results$annotation,
coverageInfo = fullCov$chr21, txdb = txdb, groupInfo = pheno$group,
titleUse = "pval"
)
## ----'vennRegions', fig.cap = "Venn diagram of regions by annotation class."----
## Make venn diagram
venn <- vennRegions(annoRegs)
## It returns the actual venn counts information
venn
## ----createVignette, eval=FALSE-----------------------------------------------
# ## Create the vignette
# library("rmarkdown")
# system.time(render("derfinderPlot.Rmd", "BiocStyle::html_document"))
#
# ## Extract the R code
# library("knitr")
# knit("derfinderPlot.Rmd", tangle = TRUE)
## ----createVignette2----------------------------------------------------------
## Clean up
unlink("chr21", recursive = TRUE)
## ----reproducibility1, echo=FALSE---------------------------------------------
## Date the vignette was generated
Sys.time()
## ----reproducibility2, echo=FALSE---------------------------------------------
## Processing time in seconds
totalTime <- diff(c(startTime, Sys.time()))
round(totalTime, digits = 3)
## ----reproducibility3, echo=FALSE-------------------------------------------------------------------------------------
## Session info
library("sessioninfo")
options(width = 120)
session_info()
## ----vignetteBiblio, results = 'asis', echo = FALSE, warning = FALSE, message = FALSE---------------------------------
## Print bibliography
PrintBibliography(bib, .opts = list(hyperlink = "to.doc", style = "html"))
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.