correct_eigenvalues: correct eigenvalues from a subspace object and return a...

View source: R/correct_eigenvalues.R

correct_eigenvaluesR Documentation

correct eigenvalues from a subspace object and return a subspace object

Description

This function correct eigenvalues from a subspace by substracting sampling eigenvalues from a random noise matrix N of the same dimension as x,which follows a Marcenko-Pastur distribution with package "RMTsata "(https://cran.r-project.org/web/packages/RMTstat/index.html).

Usage

correct_eigenvalues(subspace, num_est_samples, verbose, ...)

Arguments

subspace

A subspace object.

num_est_samples

the number of resamples to take from the Marcenko-Pastur distribution to estimate the eigenvalues.

verbose

output message

...

Extra parameters

Value

Returns a list with entries:

ndf:

The number of degrees of freedom of x.

pdim:

The number of dimensions of x.

components:

A series of right singular vectors estimated.

var_correct:

Corrected population variance for Marcenko-Pastur distribution.

transpose_flag:

A logical value indicating whether the matrix x is transposed.

irl:

A data frame of scaled eigenvalues for specified components and corresponding dimensions.

sigma_a:

A vector of corrected eigenvalues up to max(components).

mp_irl:

A data frame of sampled expected eigenvalues from Marcenko-Pastur for specified components and corresponding dimensions.

sigma_mp:

A vector of samped expected eigenvalues from Marcenko-Pastur up to max(components).

v:

Right singular vectors of x matrix for specified components.

u:

Left singular vectors of x matrix or specified components.

See Also

* [MarchenkoPasturPar()] calculates upper and lower limits of Marcenko-Pastur distribution from RMTstat package.

* [rmp()] sample scaled eigenvalues of random noise matrix from RMTstat package.

Examples


x <- x_sim(n = 100, p = 150, ncc = 10, var = c(rep(10, 5), rep(1, 5)))
x %>% create_subspace(components = 8:30) %>% correct_eigenvalues() %>% plot()


WenlanzZ/MKDim documentation built on July 30, 2022, 7:25 a.m.