uses random matrix to estimate svd results

randsvd(A, k, seed = NA)

Arguments

A

input matrix

k

rank to use

seed

for testing

Value

randomized svd is output

References

N. Halko, P.G. Martinsson, J. Tropp "Finding structure with randomness: Stochastic algorithms for constructing approximate matrix decompositions" arXiv 0909.4061

Author

Avants BB

Examples


A <- matrix(rnorm(3000), ncol = 50)
k <- 10
dr <- randsvd(A, k)$d[1:k]
dt <- svd(A)$d[1:k]
cor(dr, dt)
#> [1] 0.9838712