The GLOWr package implements the GLOW (inteGrative anaLysis using Optimized Weights) methodology for rare variant association testing in whole-genome sequencing studies. The package provides optimal weighting schemes for multiple test statistics (Burden, SKAT, Fisher, and Omnibus tests) that adaptively combine information from external data sources and functional annotations to maximize statistical power.

Main Functions

Core GLOW Tests:

Marginal Score Calculation:

Parameter Estimation:

  • get_B: Estimate effect sizes from external data or pilot studies

  • get_PI: Estimate variant-importance scores from functional annotations

Optimal Weights:

Cache Management:

Performance Features

GLOWr includes several performance optimizations:

  • Robust Matrix Inversion: Automatic correction for ill-conditioned correlation matrices using nearPD (handles condition numbers up to 10^13)

  • Covariance Caching: H0 covariance matrices are cached to speed up omnibus tests and permutation procedures

  • Fast Paths: Optimized computation for independent variants and simple transformations

  • Efficient Scaling: Typical genes (500 variants) analyze in < 1 second; genome-wide scans feasible in hours

Performance can be controlled via:

  • options(GLOWr.use_cache = TRUE/FALSE) - Enable/disable caching

Typical Workflow

  1. Calculate marginal scores from genotype and phenotype data: scores <- getZ_marg_score(G, X, Y)

  2. Estimate parameters for optimal weights: B <- get_B(...) PI <- get_PI(...)

  3. Run GLOW tests: burden_result <- GLOW_Burden(scores$Zscores, scores$M_Z, B, PI) skat_result <- GLOW_SKAT(scores$Zscores, scores$M_Z, B, PI) omni_result <- GLOW_Omni(scores$Zscores, scores$M_Z, B, PI)

References

Zhang, H., Liu, M., Landers, J. E., and Wu, Z. (2026). Integrated weighted association test with application to genetic association studies. The Annals of Applied Statistics, 20(3), 2074-2097. doi:10.1214/26-AOAS2223

Author

Maintainer: GLOWpipeline Project glow@example.com