Learn R Programming

ragt2ridges (version 0.1.9)

sparsifyVAR1: Function that determines the null and non-null elements of $\mathbf{A}$

Description

Function that determines the null and non-null elements of $\mathbf{A}$, the matrix of regression coefficients.

Usage

sparsifyVAR1(A, SigmaE, threshold=c("absValue", "localFDR", "top"), 
absValueCut=0.25, FDRcut=0.8, top=10, statistics=FALSE, verbose=FALSE)

Arguments

A
Matrix $\mathbf{A}$ of regression parameters.
SigmaE
Covariance matrix of the errors (innovations).
threshold
A character signifying type of sparsification of $\mathbf{A}$ by thresholding. Must be one of: "absValue", "localFDR", or "top".
absValueCut
A numeric giving the cut-off for element selection based on absolute value thresholding.
FDRcut
A numeric giving the cut-off for element selection based on local false discovery rate (FDR) thresholding.
top
A numeric giving the number of elements of $\code{A}$ which is to be selected, based on absolute value thresholding.
statistics
A logical indicator: should test statistics be returned. This only applies when threshold = "localFDR"
verbose
A logical indicator: should intermediate output be printed on the screen?

Value

  • A list-object with slots:
  • zerosA matrix with indices of entries of $\mathbf{A}$ that are identified to be null.
  • nonzerosA matrix with indices of entries of $\mathbf{A}$ that are identified to be non-null.
  • statisticsA matrix with test statistics employed in the local FDR procedure.
  • The matrices zeros and nonzeros comprise two columns, each row corresponding to an entry of $\mathbf{A}$. The first column contains the row indices and the second the column indices.

Details

When threshold = "localFDR" the function divides the elements of (possibly regularized) input matrix $\mathbf{A}$ of regression coefficients by their standard errors. Subsequently, the support of the matrix $\mathbf{A}$ is determined by usage of local FDR. In that case a mixture model is fitted to the nonredundant (standardized) elements of $\mathbf{A}$ by fdrtool. The decision to retain elements is then based on the argument FDRcut. Elements with a posterior probability $>=q$ FDRcut (equalling 1 - local FDR) are retained. See Strimmer (2008) for further details. Alternatively, the support of $\mathbf{A}$ is determined by simple thresholding on the absolute values of matrix entries (threshold = "absValue"). A third option (threshold = "top") is to retain a prespecified number of matrix entries based on absolute values of the elements of $\mathbf{A}$. For example, one could wish to retain those entries representing the ten strongest cross-temporal coefficients. The argument absValueCut is only used when threshold = "absValue". The argument FDRcut is only used when threshold = "localFDR". The argument top is only used when threshold = "top".

References

Strimmer, K. (2008), "fdrtool: a versatile R package for estimating local and tail area-based false discovery rates", Bioinformatics 24(12): 1461-1462.

Van Wieringen, W.N., Peeters, C.F.W. (2014), "Ridge Estimation of Inverse Covariance Matrices from High-Dimensional Data", arXiv:1403.0904 [stat.ME].

Miok, V., Wilting, S.M., Van Wieringen, W.N. (2015), "Ridge estimation of the VAR(1) model and its time series chain graph from multivariate time-course omics data", submitted.

See Also

ridgeVAR1, sparsify.

Examples

Run this code
# set dimensions
p <- 3; n <- 4; T <- 10

# set model parameters
SigmaE <- diag(p)/4
A <- createA(p, "chain")

# generate data
Y <- dataVAR1(n, T, A, SigmaE)

# fit VAR(1) model
VAR1hat <- ridgeVAR1(Y, 1, 1)

## determine which elements of A are non-null
Anullornot <- matrix(0, p, p)
Anullornot[sparsifyVAR1(VAR1hat$A, solve(VAR1hat$P), 
threshold="localFDR")$nonzeros] <- 1
## REASON FOR NOT RUN:
## the employed local FDR approximation is only valid for reasonably sized 
## number of elements of A (say) at least p > 10 and, 
## consequently, a vector of 100 regression coefficients.

## plot non-null structure of A 
edgeHeat(Anullornot)

Run the code above in your browser using DataLab