Brundle is an R package that provides a series of functions for the normalisation of ChIP-Seq data to internal or external controls. It can be installed from the Brundle package on CRAN using the install.packages("Brundle") command in R.
It is supported by the data package BrudleData.
Brundle_Example provides worked examples and preprocessing scripts for people who want to use Brundle in their own research. The examples are also packaged as a Docker Container pre-installed with all the tools to run the examples and pipeline. You can find instructions on running the container in the Brundle_Example readme. The Dockerfile and other relavent code for generating the container can be found in the BrundleDocker repository.
Below is a quick example that will generate a normalised MA plot.
# Install Package
library(devtools)
install_github("andrewholding/Brundle")
# You may also need to install packages from BioConductor e.g. DiffBind
# Load package
library(Brundle)
# Load Example Diffbind Object
data(dbaExperiment,package="Brundle")
data(dbaControl,package="Brundle")
# Load Example Samplesheets
exptCSV <- system.file("extdata", "samplesheet_SLX14438_hs_ER_DBA.csv", package="Brundle")
ctrlCSV <- system.file("extdata", "samplesheet_SLX14438_hs_CTCF_DBA.csv", package="Brundle")
jg.ExperimentSampleSheet<-exptCSV
jg.ControlSampleSheet<-ctrlCSV
# Normalise with Brundle
jg.experimentPeaksetNormalised<-Brundle(dbaExperiment,
dbaControl,
"Fulvestrant",
"none",
jg.ExperimentSampleSheet,
jg.ControlSampleSheet,
jg.noBAMs=TRUE
)
# Insert data back into DiffBind object
dba <- DiffBind:::pv.resetCounts(dbaExperiment, jg.experimentPeaksetNormalised)
# Process with DiffBind as normal
dba<-dba.analyze(dba)
dba.plotMA(dba, bFlip=TRUE, bSmooth=FALSE)
H2Av Spike-in data -Drosophilia
hsER/mmER Spike-in data - Human
hsER/mmER Spike-in data - Mouse