BinQuasi v0.1-6


Monthly downloads



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.



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)


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)

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'))

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


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))))
write.table(bedout, file="BinQuasiPeaks.bed", quote = FALSE, sep = "\t", row.names = FALSE, col.names = FALSE)

Functions in BinQuasi

Name Description 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
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

No Results!

Last month downloads


Date 2018-07-26
License GPL (>= 2)
NeedsCompilation yes
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