BinQuasi v0.1-6

0

Monthly downloads

0th

Percentile

Analyzing Replicated ChIP Sequencing Data Using Quasi-Likelihood

Identify peaks in ChIP-seq data with biological replicates using a one-sided quasi-likelihood ratio test in quasi-Poisson or quasi-negative binomial models.

Readme

BinQuasi

This package provides code to call peaks in ChIP-seq data with biological replicates using the BinQuasi algorithm of Goren, Liu, Wang, and Wang (2018) doi.org/10.1093/bioinformatics/bty227.

Installation

The BinQuasi package for R can be installed from Github using devtools following the code below.

devtools::install_github("emilygoren/BinQuasi", args = "--preclean", build_vignettes = TRUE)
library(BinQuasi)

Data Preprocessing

BinQuasi accepts sorted and indexed BAM files (note that it does not perform genome alignment of raw reads). If your BAM files are not indexed and sorted, we recommend using samtools.

Peak Calling

Once installed, BinQuasi calls peaks with the function "BQ()." Below is code to run BinQuasi with all default settings, where the sorted and indexed BAM files are stored in the directory specified by "fpath" under the file names "C1.bam", " C2.bam" and "I1.bam", "I2.bam" for ChIP and input files, respectively.

fpath <- paste0(system.file(package = 'BinQuasi'), '/extdata/')
results <- BQ(fpath, 
              ChIP.files = c('C1.bam', 'C2.bam'), 
              control.files = c('I1.bam', 'I2.bam'))
head(results$peaks)

See the package documentation for information on changing the default settings.

?BQ

Exporting Results

The code below saves the called peaks in BED format in the file "BinQuasiPeaks.bed".

# Sort peaks by p-value
opeaks <- results$peaks[order(results$peaks$P.val),]
# Name the peaks by rank
opeaks$name <- paste0('BQ_Peak_', 1:nrow(opeaks))
# Save as .bed file, setting the scores to be -log10(p-value)
bedout <- data.frame(chrom = opeaks$chr,
                     chromStart = opeaks$start,
                     chromEnd = opeaks$end,
                     name = opeaks$name,
                     score = -log10(opeaks$P.val),
                     strand = c(rep(".",  nrow(opeaks))))
head(bedout)
write.table(bedout, file="BinQuasiPeaks.bed", quote = FALSE, sep = "\t", row.names = FALSE, col.names = FALSE)

Functions in BinQuasi

Name Description
QL.fit Fit quasi-likelihood models to replicated ChIP-seq data partitioned into a count matrix
BinQuasi Analyzing Replicated ChIP Sequencing Data Using Quasi-Likelihood
count.table Create a matrix of ChIP-seq count data
NBDev Fit a negative binomial GLM for a given design matrix
BQ Call peaks in replicated ChIP-seq data using BinQuasi
QL.results Obtain p- and q-values using results from QL.fit
coef.glm Extract model coefficients
call.peaks Call peaks from a list of window-level p-values
PoisDev Compute Poisson deviances for a given design matrix
No Results!

Vignettes of BinQuasi

Name
BinQuasi.Rmd
No Results!

Last month downloads

Details

Date 2018-07-26
License GPL (>= 2)
NeedsCompilation yes
URL https://github.com/emilygoren/BinQuasi
BugReports https://github.com/emilygoren/BinQuasi/issues
RoxygenNote 6.0.1
VignetteBuilder knitr
Packaged 2018-07-27 06:12:14 UTC; emilygoren
Repository CRAN
Date/Publication 2018-07-27 08:00:03 UTC

Include our badge in your README

[![Rdoc](http://www.rdocumentation.org/badges/version/BinQuasi)](http://www.rdocumentation.org/packages/BinQuasi)