additive.test {CGEN} | R Documentation

## A test for gene-environment interaction under an additive risk model for case-control data

### Description

Performs a likelihood ratio test for gene-environment interaction under an additive risk model for case-control data using a standard logistic regression. A set of constraints is imposed to log-odds-ratio parameters to approximate the null model of no interaction under additive risk models. The additive interaction test under gene-environment independence assumption is performed by utilizing the retrospective likelihood by Chatterjee and Carroll (2005).

### Usage

    additive.test(data, response.var, snp.var, exposure.var, main.vars=NULL,
                  strata.var=NULL, op=NULL)

### Arguments

`data` | Data frame containing all the data. No default.
`response.var` | Name of the binary response variable coded as 0 (controls) and 1 (cases). No default.
`snp.var` | Name of the genotype variable coded as 0, 1, 2 (or 0, 1). No default.
`exposure.var` | Name of the exposure variable coded as 0, 1, 2 (or 0, 1). No default.
`main.vars` | Character vector of variable names or a formula for all covariates of interest which need to be included in the model as main effects. Do not include snp.var and exposure.var here, as their main effects will automatically be included in the model. The default is NULL.
`strata.var` | For a retrospective likelihood, name of the stratification variable, such as race, ethnicity, geographic origin, or principal components of population stratification markers (Bhattacharjee et al. 2010 AJHG). It is highly recommended to include it if present. This option takes into account gene-environment dependence due to population stratification by allowing the genotype frequency to vary by the discrete level of the stratification variable. The default is NULL.
`op` | A list of options with possible names `genetic.model`, `optim.method`, `indep`, `maxiter` and `reltol` (see details). The default is NULL.

### Details

A maximum likelihood for a full model is obtained by optimizing a logistic regression model using a standard binomial likelihood (i.e. prospective likelihood) while a maximum likelihood for a null model is obtained by fitting a reduced model with a set of constaints imposed on logistic regression parameters to approximate the null model of no interaction in an additive risk model. The additive interaction test under the gene-environment independence assumption can be conducted by utilizing the retrospective likelihood by Chatterjee and Carroll (2005). The following is the definition of the likelihood under the gene-environment independence assumption:

Definition of the likelihood under the gene-environment independence assumption:

Let D = 0, 1 be the case-control status, G = 0, 1, 2 denote the SNP genotype, S = 1, ..., k denote the levels of the stratification variable and Z be the design matrix for all the covariates including G, the interactions, and a column for the intercept parameter. If f_s denotes the allele frequency for stratum s, then

P(G = 0) = (1 - f_s)^2,

P(G = 1) = 2*f_s*(1 - f_s),

P(G = 2) = (f_s)^2.

If xi_s = log(f_S/(1 - f_s)), then

log(P(G=1)/P(G=0)) = log(2) + xi_s

and

log(P(G=2)/P(G=0)) = 2*xi_s.

Let theta(d,g) = d*Z*beta + I(g=1)*log(2) + g*xi_s.

Then the likelihood for a subject is P(D=d, G=g | Z, S) = exp(theta_s(d,g))/SUM[exp(theta_s(d,g))] where the sum is taken over the 6 combinations of d and g.

Options list:

Below are the names for the options list `op`. All names have default values if they are not specified.

- `genetic.model` 1-3 where 1=dominant, 2=recessive, 3=general. The default is 3.

- `optim.method` One of "BFGS", "CG", "L-BFGS-B", "Nelder-Mead", "SANN". The default is "BFGS".

- `indep` TRUE for using a retrospective likelihood for gene-environment independence assumption. FALSE for using a standard prospective likelihood. The default is FALSE.

- `reltol` Stopping tolerance. The default is 1e-7.

- `maxiter` Maximum number of iterations. The default is 500.

### Value

A list containing the following:

- additive

  - `pval.add.LRT` P-value of the additive interaction likelihood ratio test.

  - `pval.add.UML` P-value of the additive interaction UML Wald test.

  - `pval.add.CML` (only for indep=T) P-value of the additive interaction CML Wald test.

  - `pval.add.EB` (only for indep=T) P-value of the additive interaction EB Wald test.

  - `LRT.add` Likelihood ratio test statistic for the additive interaction.

  - `RERI.UML` UML estimate of RERI.

  - `RERI.CML` (only for indep=T) CML estimate of RERI.

  - `RERI.EB` (only for indep=T) EB estimate of RERI.

  - `RERI.test` (only for 2x2 method) Test based on RERI.

  - `S.test` (only for 2x2 method and indep=F) Test based on Synergy Index.

  - `AP.test` (only for 2x2 method and indep=F) Test based on "Attributable Proportion due to interaction".

- multiplicative (only for genetic.model != 0)

  - `pval.mult.LRT` P-value of the multiplicative interaction likelihood ratio test.

  - `pval.mult.UML` P-value of the multiplicative interaction UML Wald test.

  - `pval.mult.CML` (only for indep=T) P-value of the multiplicative interaction CML Wald test.

  - `pval.mult.EB` (only for indep=T) P-value of the multiplicative interaction EB Wald test.

  - `LRT.mult` Likelihood ratio test statistic for the multiplicative interaction.

- model.info

  - `response.var` Response variable name

  - `snp.var` SNP variable name

  - `exposure.var` Exposure variable name

  - `main.vars` Names of covariates which are included in the model as main effects. This does not include snp.var and exposure.var, whose main effects are included in the model by default.

  - `strata.var` Name of the stratification variable for a retrospective likelihood.

  - `op` List of options used in the fit; includes genetic.model, optim.method, indep, maxiter, reltol

  - `GxEtable` The frequency table defined by table(snp.var, exposure.var)

  - `method` One of "2x2", "2x3", "3x2", "3x3", "3x2trend" ("3x3trend" is currently not available)

  - `parms.lm.UML` UML parameters estimates

  - `parms.lm.CML` (only for indep=T) CML parameters estimates

  - `parms.lm.EB` (only for indep=T) EB parameters estimates

  - `cov.lm.UML` UML parameters covariance matrix estimate

  - `cov.lm.CML` (only for indep=T) CML parameters covariance matrix estimate

  - `cov.lm.EB` (only for indep=T) EB parameters covariance matrix estimate

  - `full.loglike.UML` (only for indep=T) Loglikelihood of UML full model fit

  - `full.loglike.CML` (only for indep=T) Loglikelihood of CML full model fit

  - `DF` Degrees of freedom of the additive/multiplicative interaction test.

  - `optim.out` (only for genetic.model != 0) Optimization output of the optim() function for a null model under an additive model restriction.

  - `OR.table.UML` (only for indep=F) Odds ratio table UML estimate

  - `OR.table.CML` (only for indep=T) Odds ratio table CML estimate

### References

Sanyal, N., Napolioni, V., de Rochemonteix, M., Belloy, M. E., Caporaso, N. E., Landi, M. T., Greicius, M. D., Chatterjee, N., Han, S. S. A robust test for additive gene-environment interaction under the trend effect of genotype using an empirical Bayes-type shrinkage estimator. American Journal of Epidemiology 2021 (in press).

de Rochemonteix M, Napolioni V, Sanyal N, et al. A likelihood ratio test for gene-environment interaction based on the trend effect of genotype under an additive risk model using the gene-environment independence assumption. American Journal of Epidemiology 2021;190(1):129-41.

Han, S. S, Rosenberg P. S, Garcia-Closas M, Figueroa J. D, Silverman D, Chanock S. J, Rothman N, and Chatterjee N. Likelihood ratio test for detecting gene (G) environment (E) interactions under the additive risk model exploiting G-E independence for case-control data. Am J of Epidemiol, 2012; 176:1060-7.

Chatterjee, N. and Carroll, R. Semiparametric maximum likelihood estimation exploting gene-environment independence in case-control studies. Biometrika, 2005, 92, 2, pp.399-418.

Bhattacharjee, S., Wang, Z., Ciampa, J., Kraft, P., Chanock, S., Yu, K. and Chatterjee, N. Using principal components of genetic variation for robust and powerful detection of gene-gene interactions in case-control and case-only studies. Am J of Hum Genet, 2010; 86(3), 331-342.

### See Also

`snp.logistic`, `snp.score`

### Examples

     # # # EXAMPLE 1: Use the lung cancer data
     data(Xdata2, package="CGEN")

     # <<1A>> Standard (prospective) likelihood additive GXE analysis under the additive genetic model
     # (i.e. the trend effect of genotype) using the method from de Rochemonteix et al. 2021)

     A0F <- additive.test(data = Xdata2, response.var = "case.control", snp.var = "SNP",
                exposure.var = "smoking", main.vars = c("cov1", "cov2", "cov3",
                "cov4", "study"), strata.var = "study", op = list(genetic.model = 0))
     A0F$pval.add.LRT   # P-value of the additive interaction likelihood ratio test.

     # <<1B>> Retrospective likelihood additive GXE analysis under the additive genetic model
     # (i.e. the trend effect of genotype) using the method (LRT) from de Rochemonteix et al. 2021
     # and, for the empirical-Bayes type shrinkage estimator, the method (Wald test) from
     # Sanyal et al. 2021)

     A0T <- additive.test(data = Xdata2, response.var = "case.control", snp.var = "SNP",
                exposure.var = "smoking", main.vars = c("cov1", "cov2", "cov3",
                "cov4", "study"), strata.var = "study", op = list(genetic.model = 0,
                indep = TRUE))
     A0T$pval.add.LRT   # P-value of the additive interaction likelihood ratio test.
     A0T$pval.add.EB    # P-value of the additive interaction EB Wald test
                        #(that is the weighted average of the CML and UML methods.)
     A0T$pval.add.UML   # P-value of the additive interaction UML Wald test
                        #(that does not assume G-E independence).
     A0T$pval.add.CML   # P-value of the additive interaction CML Wald test
                        #(that assumes G-E independence).

     # <<1C>> Standard (prospective) likelihood additive GXE analysis under the dominant genetic model
     # (using the method from Han et al. 2012)

     A1F <- additive.test(data = Xdata2, response.var = "case.control", snp.var = "SNP",
                exposure.var = "smoking", main.vars = c("cov1", "cov2", "cov3",
                "cov4", "study"), strata.var = "study", op = list(genetic.model = 1))
     A1F$pval.add.LRT   # P-value of the additive interaction likelihood ratio test.

     # <<1D>> Standard (prospective) likelihood additive GXE analysis under the dominant genetic model
     # (using the methofd from Han et al. 2012)

     A1T <- additive.test(data = Xdata2, response.var = "case.control", snp.var = "SNP",
                exposure.var = "smoking", main.vars = c("cov1", "cov2", "cov3",
                "cov4", "study"), strata.var = "study", op = list(genetic.model = 1,
                indep = TRUE))
     A1T$pval.add.LRT   # P-value of the additive interaction likelihood ratio test.

     # # # EXAMPLE 2: Use the ovarian cancer data
     data(Xdata, package="CGEN")

     table(Xdata[, "gynSurgery.history"])

     # Recode the exposure variable so that it is 0-1

     temp <- Xdata[, "gynSurgery.history"] == 2
     Xdata[temp, "gynSurgery.history"] <- 1

     # <<2A>> Standard (prospective) likelihood additive GXE analysis under the dominant genetic model
     # (using the method from Han et al. 2012)

     out1 <- additive.test(data=Xdata, response.var="case.control", snp.var="BRCA.status",
                exposure.var="gynSurgery.history", main.vars=c("n.children","oral.years"),
                op=list(genetic.model=1))

     # <<2B>> Retrospective likelihood (indep = TRUE) additive GXE analysis under the dominant genetic model
     # (using the method from Han et al. 2012)

     out2 <- additive.test(data=Xdata, response.var="case.control", snp.var="BRCA.status",
                exposure.var="gynSurgery.history", main.vars=~n.children+oral.years,
                strata.var="ethnic.group", op=list(indep=TRUE, genetic.model=1))

[Package CGEN version 3.28.0 Index]