Learn R Programming

snQTL (version 0.2)

sLME: Calculate of sLME for matrices

Description

Calculate the sLME given a matrix \(D\). For any symmetric matrix \(D\), sLME test statistic is defined as $$max{ sEig(D), sEig(-D) }$$ where sEig() is the sparse leading eigenvalue, defined as $$max_{v} v^T A v$$ subject to \(||v||_2 \leq 1, ||v||_1 \leq s\).

Usage

sLME(Dmat, rho = 1000, sumabs.seq = 0.2, niter = 20, trace = FALSE)

Value

A list containing the following components:

sumabs.seq

the sequence of sparsity parameters

rho

a positive constant to augment the diagonal of the differential matrix such that \(D + rho*I\) becomes positive definite.

stats

a numeric vector of test statistics when using different sparsity parameters (corresponding to sumabs.seq).

sign

a vector of signs when using different sparsity parameters (corresponding to sumabs.seq). Sign is "pos" if the test statistic is given by sEig(D), and "neg" if is given by sEig(-D), where sEig denotes the sparse leading eigenvalue.

v

the sequence of sparse leading eigenvectors, each row corresponds to one sparsity parameter given by sumabs.seq.

leverage

the leverage score for genes (defined as \(v^2\) element-wise) using different sparsity parameters. Each row corresponds to one sparsity parameter given by sumabs.seq.

Arguments

Dmat

p-by-p numeric matrix, the differential matrix

rho

a large positive constant such that \(D+diag(rep(rho, p))\) and \(-D+diag(rep(rho, p))\) are positive definite.

sumabs.seq

a numeric vector specifing the sequence of sparsity parameters, each between \(1/sqrt(p)\) and 1. Each sumabs*\(\sqrt{p}\) is the upperbound of the L_1 norm of leading sparse eigenvector \(v\).

niter

the number of iterations to use in the PMD algorithm (see symmPMD())

trace

whether to trace the progress of PMD algorithm (see symmPMD())

References

Zhu, Lingxue, et al. "Testing high-dimensional covariance matrices, with application to detecting schizophrenia risk genes." The annals of applied statistics 11.3 (2017): 1810.