Learn R Programming

Brundle

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.

Quick Start

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)

Workflow

Example Data on UCSC Gene Browser

CTCF Spike-in data

H2Av Spike-in data - Human

H2Av Spike-in data -Drosophilia

hsER/mmER Spike-in data - Human

hsER/mmER Spike-in data - Mouse

CTCF Spike-in (+/-E2) ER data

CTCF Spike-in (+/-E2) H4k12ac data

ER+ Breast Cancer PDX Data

Copy Link

Version

Install

install.packages('Brundle')

Monthly Downloads

29

Version

1.0.9

License

CC BY 4.0

Maintainer

Andrew Holding

Last Published

April 23rd, 2019

Functions in Brundle (1.0.9)

jg.controlPeakset

Example ChIP-seq Control Peakset
jg.getCorrectionFactor

jg.getCorrectionFactor
jg.getDba

jg.getDba
jg.runDeSeq

jg.runDeSeq
jg.controlCountsUntreated

Example ChIP-seq Count Matrix
jg.controlPeaks

Example ChIP-seq Control Peakset
jg.dbaGetPeakset

dbaGetPeakset
Brundle

Brundle
jg.experimentResultsDeseq

Example ChIP-seq DeSEQ2 results
dbaControl

Example DiffBind Object of Control Peaks
jg.correctDBASizeFactors

jg.correctDBASizeFactors
jg.experimentPeakset

Example ChIP-seq Experiment Peakset
jg.conditions

Example Sample Condition Matrix
jg.controlCountsTreated

Example ChIP-seq Count Matrix
jg.controlResultsDeseq

Example ChIP-seq DeSEQ2 Control results
jg.plotMA

jg.plotMA
jg.getControlCounts

jg.getControlCounts
jg.plotNormalization

jg.plotNormalization
jg.plotDeSeqCombined

jg.plotDeSeqCombined
jg.plotDeSeq

jg.plotDeSeq
dbaExperiment

Example DiffBind Object of Experimental Peaks
jg.countAlignedMReads

jg.countAlignedMReads
jg.getNormalizationCoefficient

jg.getNormalizationCoefficient
jg.convertPeakset

jg.convertPeakset
jg.getSampleIds

jg.getSampleIds
jg.applyNormalisation

jg.applyNormalisation
jg.controlPeaksetDeSeq

Example ChIP-seq Control Peakset