sparse additive interaction learning
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
R
data-raw
data
docs
figure
man
manuscript
my_sims
rda
tests
vignettes
.Rbuildignore
.gitignore
.travis.yml
CODE_OF_CONDUCT.md
DESCRIPTION
LICENSE
NAMESPACE
NEWS.md
README.md
_pkgdown.yml
codecov.yml
sail.Rproj

README.md

sail: Sparse Additive Interaction Learning

Travis build status Coverage status CRAN_Status_Badge

R software package to fit sparse additive interaction models with the strong heredity property. Interactions are limited to a single exposure or environment variable. The following figure (based on simulated data) gives an idea of the situation our method is trying to capture:

The x-axis is a predictor, the y-axis is the response and each line represents an exposure status. In this example, we see that the effect of the DNA methylation (at one CpG site) on obesity is linear for controls (unexposed: E=0) and non-linear for individuals with a gestational diabetes-affected pregnancy (exposed: E=1).

Installation

You can install the development version of sail from GitHub with:

if (!require("pacman")) install.packages("pacman")
pacman::p_install_gh("sahirbhatnagar/sail")

Vignette

See the online vignette for details about the sail model and example usage of the functions.

Model Input

This method requires four inputs (let n be the number of observations and p the number of X variables):

  1. X: n x p matrix of covariates. Can be high-dimensional, i.e., p >> n. Can also be continuous, categorical or a combination of both.
  2. Y: a continuous response of length n
  3. E: an exposure variable of length n. Can be continous or categorical.
  4. A basis expansion function f(X_j) to be applied to each column of X, for example
f.basis <- function(x) splines::bs(x, degree = 5)

Model Output

The sail method will search for all main effects and interactions between E and f(X_j) that are associated with the response Y, in a multivariable regression model. It will perform simultaneous variable selection and estimation of model parameters, and return a sparse model (i.e. many parameters with coefficient 0).

Credit

We make use of the following packages:

Related Work

Contact

Latest news

You can see the most recent changes to the package in the NEWS.md file

Code of Conduct

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.