Skip to contents

This function is a part of the statistical library for SNP imputation from: https://gitlab.pasteur.fr/statistical-genetics/raiss/-/blob/master/raiss/stat_models.py It is R implementation of the imputation model described in the paper by Bogdan Pasaniuc, Noah Zaitlen, et al., titled "Fast and accurate imputation of summary statistics enhances evidence of functional enrichment", published in Bioinformatics in 2014.

Usage

raiss(
  refPanel,
  knownZscores,
  ldMatrix = NULL,
  genotypeMatrix = NULL,
  lamb = 0.01,
  rcond = 0.01,
  svdTol = 1e-08,
  r2Threshold = 0.6,
  minimumLd = 5,
  verbose = TRUE
)

Arguments

refPanel

A data frame containing 'chrom', 'pos', 'variant_id', 'A1', and 'A2'.

knownZscores

A data frame containing 'chrom', 'pos', 'variant_id', 'A1', 'A2', and 'z' values.

ldMatrix

Either a square matrix or a list of matrices for LD blocks. Provide either ldMatrix or genotypeMatrix, not both.

genotypeMatrix

A centered and scaled genotype matrix (n x p) as an alternative to ldMatrix. Column order must match the variant order in refPanel. When provided, the imputation uses an SVD-based approach that avoids forming the p x p LD matrix.

lamb

Regularization term added to the diagonal of the ldMatrix.

rcond

Threshold for filtering eigenvalues in the pseudo-inverse computation (only used with ldMatrix path).

svdTol

Relative tolerance for filtering small singular values (only used with genotypeMatrix path).

r2Threshold

R square threshold below which SNPs are filtered from the output.

minimumLd

Minimum LD score threshold for SNP filtering.

verbose

Logical indicating whether to print progress information.

Value

A list containing filtered and unfiltered results, and filtered LD matrix (ldMat is NULL when using genotypeMatrix path).

Details

This function can process either a single LD matrix or a list of LD matrices for different blocks. For a list of matrices, it processes each block separately and combines the results. Alternatively, it can accept a genotype matrix X directly, avoiding the need to form the p x p LD matrix (memory and compute savings when n << p).