This package implements aGE tests, which is a data-adaptive set-based gene-environment interaction (GxE) test, specifically designed for rare variants.
The model is \(g(\mu_i)= X_i\beta_0+ G_i\beta_1 + S_i\beta_2\),
where \(g(\cdot)\) is the link function, \(X_i\) is the covariate matrix including the environmental variable, \(G_i\) is the \(q \times q\) genotype matrix and \(S_i\) is the \(q \times q\) GxE interaction matrix.
The interaction test, the null hypothesis is that \(\beta_2=[\beta_{21},\ldots,\beta_{2q}]^T=[0,\ldots,0]^T.\)
For joint test,the null hypothesis is that \(\beta_1=\beta_2=[0,\ldots,0]^T.\)
Other than CRAN, github can be checked for most recent update.
setwd('local folder')
install.packages('aGE.version.tar.gz',repos=NULL,type='source')
Two functions are available: aGE and aGE.joint. The former performs adaptive GxE test and the later performs joint test for both genetic main and GxE effects. The details of inputs of the functions can be foound by typing ?aGE and ?aGE.joint in R command line.
A simple demonstration of the usage and output of the package. The simulation method is recommended to use for sample size \(>\) 500.
library(aGE)
set.seed(12345)
phenotype <- c(rep(1,50),rep(0,50))
genotype <- data.frame(g1=sample(c(rep(1,10),rep(0,90))),g2=sample(c(rep(1,5), rep(0,95))))
covariates <- data.frame(Envir=rnorm(100), Age=rnorm(100,60,5))
exD <- list(Y=phenotype, G=genotype, X=covariates)
aGE(Y=exD$Y, G=exD$G, cov=exD$X, model='binomial', nonparaE=F, stepwise=F)
## aGEsm1 aGEsm2 aGEsm3 aGEsm4 aGEsm5
## 0.02800000 0.11800000 0.11900000 0.17000000 0.16000000
## aGEsm6 aGEsm aGEsm_fisher
## 0.19100000 0.05194805 0.10389610
aGE.joint(Y=exD$Y, G=exD$G, cov=exD$X, model='binomial', nonparaE=T, DF=5, method='Simulation')
## aGEj1 aGEj2 aGEj3 aGEj4 aGEj5 aGEj6
## 0.4870000 0.2000000 0.2120000 0.2430000 0.2200000 0.2410000
## aGEj aGEj_minp aGEj_fisher
## 0.3316683 0.1198801 0.1228771
The stepwise option in aGE function is suggested for real-data GxE analysis, where a high genome-wide significant level is required. It performs Monte Carlo method with the number of permutation (B) equals 1,000 and then increase B gradually if small p-values are observed.