Implementations of the Characteristic Direction Method:

A new R package for performing gene expression analysis with the Characteristic Direction Method is now available.
Source Binary
The R package for PAEA/Characteristic direction has now been accepted to CRAN. The package can now be installed from the "Packages>>Install Packages" dropdown menu in R, or just by typing:
install.packages("GeoDE")

Python code
Requires:
numpy module (works in both Python 2.7 and Python 3.4)
MATLAB code
Requires:
MATLAB
Mathematica code
Requires:
Mathematica9
R code
Requires:
R


Examples and readme files are within the download packages

This website was created to support the following publication:

The Characteristic Direction: A Geometrical Approach to Identify Differentially Expressed Genes

Authors: Neil R. Clark, Kevin S. Hu, Axel S. Feldmann, Yan Kou, Edward Y. Chen, Qiaonan Duan, and Avi Ma'ayan

BMC Bioinformatics 2014, 15:79
Tweet

Abstract: Identifying differentially expressed genes (DEG) is a fundamental step in studies that perform genome wide expression profiling. Typically, DEG are identified by univariate approaches such as Significance Analysis of Microarrays (SAM) or Linear Models for Microarray Data (LIMMA) for processing cDNA microarrays, and differential gene expression analysis based on the negative binomial distribution (DESeq) or Empirical analysis of Digital Gene Expression data in R (edgeR) for RNA-seq profiling. Here we present a new geometrical multivariate approach to identify DEG called the Characteristic Direction. We demonstrate that the Characteristic Direction method is significantly more sensitive than existing methods for identifying DEG in the context of transcription factor (TF) and drug perturbation responses over a large number of microarray experiments. We also benchmarked the Characteristic Direction method using synthetic data, as well as RNA-Seq data. A large collection of microarray expression data from TF perturbations (73 experiments) and drug perturbations (130 experiments) extracted from the Gene Expression Omnibus (GEO), as well as an RNA-Seq study that profiled genome-wide gene expression and STAT3 DNA binding in two subtypes of diffuse large B-cell Lymphoma, was used for benchmarking the method using real data. ChIP-Seq data identifying DNA binding sites of the perturbed TFs, as well as known drug targets of the perturbing drugs, were used as prior knowledge silver-standard for validation. In all cases the Characteristic Direction DEG calling method outperformed other methods. We find that when drugs are applied to cells in various contexts, the proteins that interact with the drug-targets are differentially expressed and more of the corresponding genes are discovered by the Characteristic Direction method. In addition, we show that the Characteristic Direction conceptualization can be used to perform improved gene set enrichment analyses when compared with the gene-set enrichment analysis (GSEA) and the hypergeometric test. The application of the Characteristic Direction method may shed new light on relevant biological mechanisms that would have remained undiscovered by the current state-of-the-art DEG methods. The method is freely accessible via various open source code implementations using four popular programming languages: R, Python, MATLAB and Mathematica.

Fig. 1. Toy example to demonstrate the concept of the Characteristic Direction identified with a hyperplane which defines the boundary of a linear classification between two sets of gene expression profiles. a) The boundary in gene expression space is represented by a dashed line, whereas the perpendicular direction is indicated by an arrow. b-d) Illustrative examples of the distribution of expression profiles in two-dimensional logarithmic gene expression space, along with the distributions as projected onto the gene axes and the direction perpendicular to the classification boundary hyperplane.

Implementations of the Characteristic Direction Method:

Python code
Requires:
Python 2.7.4 and the numpy module
MATLAB code
Requires:
MATLAB
Mathematica code
Requires:
Mathematica9
R code
Requires:
R


Examples and Readme files are within the download packages
(c) 2014 Ma'ayan Laboratory - Icahn School of Medicine at Mount Sinai