distcov: Compute a distance between two covariance matrices

View source: R/shapes.R

distcovR Documentation

Compute a distance between two covariance matrices

Description

Compute a distance between two covariance matrices, with non-Euclidean options.

Usage

distcov(S1, S2, method="Riemannian",alpha=1/2) 

Arguments

S1

Input a covariance matrix (square, symmetric, positive definite)

S2

Input another covariance matrix of the same size

method

The type of distance to be used: "Procrustes": Procrustes size-and-shape metric, "ProcrustesShape": Procrustes metric with scaling, "Riemannian": Riemannian metric, "Cholesky": Cholesky based distance, "Power: Power Euclidean, with power alpha, "Euclidean": Euclidean metric, "LogEuclidean": Log-Euclidean metric, "RiemannianLe": Another Riemannian metric.

alpha

The power to be used in the power Euclidean metric

Value

The distance

Author(s)

Ian Dryden

References

Dryden, I.L., Koloydenko, A. and Zhou, D. (2009). Non-Euclidean statistics for covariance matrices, with applications to diffusion tensor imaging. Annals of Applied Statistics, 3, 1102-1123.

See Also

estcov

Examples



A <- diag(5)
B <- A + .1*matrix(rnorm(25),5,5) 
S1<-A
S2<- B

distcov( S1, S2, method="Procrustes")


shapes documentation built on Feb. 16, 2023, 8:16 p.m.