Learn R Programming

evolqg (version 0.3-4)

MatrixDistance: Matrix distance

Description

Calculates Distances between covariance matrices.

Usage

MatrixDistance(cov.x, cov.y, distance, ...)

# S3 method for default MatrixDistance(cov.x, cov.y, distance = c("OverlapDist", "RiemannDist"), ...)

# S3 method for list MatrixDistance( cov.x, cov.y = NULL, distance = c("OverlapDist", "RiemannDist"), ..., parallel = FALSE )

Value

If cov.x and cov.y are passed, returns distance between them.

If is a list cov.x and cov.y are passed, same as above, but for all matrices in cov.x.

If only a list is passed to cov.x, a matrix of Distances is returned

Arguments

cov.x

Single covariance matrix or list of covariance matrices. If single matrix is supplied, it is compared to cov.y. If list is supplied and no cov.y is supplied, all matrices are compared. If cov.y is supplied, all matrices in list are compared to it.

cov.y

First argument is compared to cov.y. Optional if cov.x is a list.

distance

distance function for use in calculation. Currently supports "Riemann" and "Overlap".

...

additional arguments passed to other methods

parallel

if TRUE and a list is passed, computations are done in parallel. Some foreach back-end must be registered, like doParallel or doMC.

Author

Diogo Melo

See Also

RiemannDist,OverlapDist

Examples

Run this code
c1 <- RandomMatrix(10)
c2 <- RandomMatrix(10)
c3 <- RandomMatrix(10)
MatrixDistance(c1, c2, "OverlapDist")
MatrixDistance(c1, c2, "RiemannDist")

# Compare multiple matrices
MatrixDistance(list(c1, c2, c3), distance = "OverlapDist")

# Compare multiple matrices to a target matrix
c4 <- RandomMatrix(10)
MatrixDistance(list(c1, c2, c3), c4)

Run the code above in your browser using DataLab