ClassifyGxT is a method for classifying gene-by-treatment (GxT) interactions using Bayesian model selection (BMS). The method is primarily designed for molecular count phenotypes, such as gene expression and chromatin accessibility, although it can be used for other types of phenotypes. It takes as input a list of feature-SNP pairs (or SNPs) with significant GxT interactions that have already been identified by a standard method and assigns posterior probability of different types of GxT interactions to each of the feature-SNP pairs (or SNPs). See Overview below for the types of GxT interactions.
See Get started
and Reference
for usage instructions.
Yuriko Harigaya, Nana Matoba, Brandon D. Le, Jordan M. Valone, Jason L. Stein, Michael I. Love*, William Valdar*. "Probabilistic classification of gene-by-treatment interactions on molecular count phenotypes." doi: https://doi.org/10.1101/2024.08.03.605142 (* These authors contributed equally to this work.)
In the simplest form, our BMS framework can be described as follows.
For
To account for the inherent nonlinear relationship between the genotype and the tranformed molecular count phenotype, we use nonlinear regression.
The eight models can be formulated in the same way using the
Although we primarily use the
|
Nomenclature |
---|---|
(0,0,0) | No effect |
(1,0,0) | Genotype main effect only |
(0,1,0) | Treatment main effect only |
(1,1,0) | Genotype and treatment main effects only |
(0,0,1) | Treatment-induced genotype effect |
(1,0,1) | Treatment-altered genotype effect |
(0,1,1) | Treatment main effect and treatment-induced genotype effect |
(1,1,1) | Genotype and treatment main effects and interaction |
ClassifyGxT requires individual genotype and phenotype data for a list of feature-SNP pairs (or SNPs) with significant GxT interactions that have already been identified by a standard method, such as TensorQTL. See Get started
for the format of input data. See Using ClassifyGxT with TensorQTL under Articles
for an instruction on formatting input data for ClassifyGxT from typical input/output data for TensorQTL.
The classifygxt R package can be installed using devtools.
if (!requireNamespace("devtools", quietly = TRUE)) install.packages("devtools")
devtools::install_github("yharigaya/classifygxt")