seqAssocGLMM_spaACAT_O {SAIGEgds} | R Documentation |
ACAT-O combined p-value calculations using mixed models and the Saddlepoint approximation method for case-control imbalance.
seqAssocGLMM_spaACAT_O(gdsfile, modobj, units, wbeta=AggrParamBeta, burden.mac=10, burden.summac=3, dsnode="", spa.pval=0.05, var.ratio=NaN, res.savefn="", res.compress="LZMA", parallel=FALSE, verbose=TRUE, verbose.maf=TRUE)
gdsfile |
a SeqArray GDS filename, or a GDS object |
modobj |
an R object for SAIGE model parameters |
units |
a list of units of selected variants, with S3 class
|
wbeta |
weights for per-variant effect, using beta distribution
|
burden.mac |
a threshold of minor allele count for using burden test
instead of single variant test if |
burden.summac |
a threshold for the weighted sum of minor allele
counts in burden test (checking |
dsnode |
"" for automatically searching the GDS nodes "genotype" and "annotation/format/DS", or use a user-defined GDS node in the file |
spa.pval |
the p-value threshold for SPA adjustment, 0.05 by default |
var.ratio |
|
res.savefn |
an RData or GDS file name, "" for no saving |
res.compress |
the compression method for the output file, it should be one of LZMA, LZMA_RA, ZIP, ZIP_RA and none |
parallel |
|
verbose |
if |
verbose.maf |
if |
The original SAIGE R package uses 0.05 as a threshold for unadjusted
p-values to further calculate SPA-adjusted p-values. If var.ratio=NaN
,
the average of variance ratios (mean(modobj$var.ratio$ratio)
) is used
instead.
For more details of SAIGE algorithm, please refer to the SAIGE paper
[Zhou et al. 2018] (see the reference section). No SKAT implementation.
Return a data.frame
with the following components if not saving to
a file:
chr
, chromosome;
start
, a starting position;
end
, an ending position;
numvar
, the number of variants in a window;
summac
, the weighted sum of minor allele counts;
beta
, beta coefficient, odds ratio if binary outcomes);
SE
, standard error for beta coefficient;
pval
, adjusted p-value with Saddlepoint approximation;
p.norm |
p-values based on asymptotic normality (could be 0 if it
is too small, e.g., |
cvg
, whether the SPA algorithm converges or not for adjusted p-value.
Xiuwen Zheng
Liu Y., Chen S., Li Z., Morrison A.C., Boerwinkle E., Lin X. ACAT: A Fast and Powerful p Value Combination Method for Rare-Variant Analysis in Sequencing Studies. Am J Hum Genetics 104, 410-421 (2019).
seqAssocGLMM_spaBurden
, seqAssocGLMM_spaACAT_V
# open a GDS file fn <- system.file("extdata", "grm1k_10k_snp.gds", package="SAIGEgds") gdsfile <- seqOpen(fn) # load phenotype phenofn <- system.file("extdata", "pheno.txt.gz", package="SAIGEgds") pheno <- read.table(phenofn, header=TRUE, as.is=TRUE) head(pheno) # fit the null model glmm <- seqFitNullGLMM_SPA(y ~ x1 + x2, pheno, gdsfile, trait.type="binary") # get a list of variant units for burden tests units <- seqUnitSlidingWindows(gdsfile, win.size=500, win.shift=250) assoc <- seqAssocGLMM_spaACAT_O(gdsfile, glmm, units) head(assoc) # close the GDS file seqClose(gdsfile)