Differential Gene Correlation Analysis

Performs differential correlation analysis on input matrices, with multiple conditions specified by a design matrix. Contains functions to filter, process, save, visualize, and interpret differential correlations of identifier-pairs across the entire identifier space, or with respect to a particular set of identifiers (e.g., one). Also contains several functions to perform differential correlation analysis on clusters (i.e., modules) or genes. Finally, it contains functions to generate empirical p-values for the hypothesis tests and adjust them for multiple comparisons. Although the package was built with gene expression data in mind, it is applicable to other types of genomics data as well, in addition to being potentially applicable to data from other fields entirely. It is described more fully in the manuscript introducing it, freely available at .

Travis-CI Build Status

The goal of DGCA is to calculate differential correlations across conditions.

It simplifies the process of seeing whether two correlations are different without having to rely solely on parametric assumptions by leveraging non-parametric permutation tests and adjusting the resulting empirical p-values for multiple corrections using the qvalue R package.

It also has several other options including calculating the average differential correlation between groups of genes, gene ontology enrichment analyses of the results, and differential correlation network identification via integration with MEGENA.


You can install DGCA from github with:

# install.packages("devtools")

Basic Example

data(darmanis); data(design_mat)
ddcor_res = ddcorAll(inputMat = darmanis, design = design_mat, compare = c("oligodendrocyte", "neuron"))
head(ddcor_res, 3)
#   Gene1  Gene2 oligodendrocyte_cor oligodendrocyte_pVal neuron_cor neuron_pVal
# 1 CACYBP   NACA        -0.070261455           0.67509118  0.9567267           0
# 2 CACYBP    SSB        -0.055290516           0.74162636  0.9578999           0
# 3 NDUFB9    SSB        -0.009668455           0.95405875  0.9491904           0
#   zScoreDiff     pValDiff     empPVals pValDiff_adj Classes
# 1  10.256977 1.100991e-24 1.040991e-05    0.6404514     0/+
# 2  10.251847 1.161031e-24 1.040991e-05    0.6404514     0/+
# 3   9.515191 1.813802e-21 2.265685e-05    0.6404514     0/+


There are three vignettes available in order to help you learn how to use the package:

  • DGCA_basic: This will get you up-and-going quickly.
  • DGCA: This is a more extended version that explains a bit about how the package works and shows several of the options available in the package.
  • DGCA_modules: This will show you how to use the package to perform module-based and network-based analyses.

The second two vignettes can be found in inst/doc.


You can view the manuscript describing DGCA in detail as well as several applications here:

Material for associated simulations and networks created from MEGENA can be found here:


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.0.2 by Andrew McKenzie, 2 years ago

Browse source code at https://github.com/cran/DGCA

Authors: Bin Zhang [aut] , Andrew McKenzie [aut, cre]

Documentation:   PDF Manual  

GPL-3 license

Imports WGCNA, matrixStats, methods

Suggests knitr, impute, gplots, fdrtool, testthat, ggplot2, plotrix, GOstats, HGNChelper, org.Hs.eg.db, AnnotationDbi, abind, MEGENA, Matrix, doMC, igraph, cowplot, stats, utils

See at CRAN