MatrixDistance {evolqg} | R Documentation |
Matrix distance
Description
Calculates Distances between covariance matrices.
Usage
MatrixDistance(cov.x, cov.y, distance, ...)
## Default S3 method:
MatrixDistance(cov.x, cov.y, distance = c("OverlapDist", "RiemannDist"), ...)
## S3 method for class 'list'
MatrixDistance(
cov.x,
cov.y = NULL,
distance = c("OverlapDist", "RiemannDist"),
...,
parallel = FALSE
)
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. |
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
Author(s)
Diogo Melo
See Also
Examples
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)