/SCANG

Primary LanguageC++

SCANG (SCAN the Genome)

This is an R package for performing SCANG procedure in whole genome sequencing studies.

Description

SCANG is an R package for performing a flexible and computationally efficient scan statistic procedure (SCANG) that uses the p-value of a variant set-based test as a scan statistic of each moving window, to detect rare variant association regions for both continuous and dichotomous traits.

Dependencies

SCANG links to R packages Rcpp and RcppArmadillo, and also imports R packages Rcpp, GMMAT, Matrix, GENESIS, STAAR, kinship2. These dependencies should be installed before installing SCANG.

Installation

library(devtools)
devtools::install_github("zilinli1988/SCANG")

Docker Image

A docker image for SCANG, including R (version 3.6.1) built with Intel MKL and all STAAR-related packages (STAAR, SCANG, STAARpipeline, STAARpipelineSummary) pre-installed, is located in the Docker Hub. The docker image can be pulled using

docker pull zilinli/staarpipeline:0.9.6

Usage

Please see the SCANG user manual for detailed usage of SCANG package. Please see the SCANG tutorial for an example of analyzing sequencing data using SCANG procedure.

For optimal computational performance, it is recommended to use an R version configured with the Intel Math Kernel Library (or other fast BLAS/LAPACK libraries). See the instructions on building R with Intel MKL.

Citation

If you use SCANG for your work, please cite:

Zilin Li, Xihao Li, Yaowu Liu, Jincheng Shen, Han Chen, Hufeng Zhou, Alanna C. Morrison, Eric Boerwinkle, and Xihong Lin (2019) "Dynamic Scan Procedure for Detecting Rare-Variant Association Regions in Whole-Genome Sequencing Studies". The American Journal of Human Genetics, 104(5), 802-814. PMID: 30982610. PMCID: PMC6507043. DOI: 10.1016/j.ajhg.2019.03.002.

Version

v1.0.2: Allow incorporating multiple functional annotations in SCANG procedure through STAAR.
v1.0.2.1: Add one more parameter in SCANG function.
v1.0.3: Clean up the C++ functions to avoid duplication with STAAR package.
v1.0.3.1: Define ARMA_64BIT_WORD 1 in C++ code.
v1.0.4: Adjust for the updated class of matrix ("matrix" and "array") after R version 4.0.0.

License

This software is licensed under GPLv3.