A script that validates that data inputs are correct, and returns a distance matrix and a ids vector.
discr.validator(
X,
Y,
is.dist = FALSE,
dist.xfm = mgc.distance,
dist.params = list(method = "euclidean"),
dist.return = NULL,
remove.isolates = TRUE
)is interpreted as:
[n x d] data matrixX is a data matrix with n samples in d dimensions, if flag is.dist=FALSE.
[n x n] distance matrixX is a distance matrix. Use flag is.dist=TRUE.
is interpreted as:
[n x d] data matrixY is a data matrix with n samples in d dimensions, if flag is.dist=FALSE.
[n x n] distance matrixY is a distance matrix. Use flag is.dist=TRUE.
a boolean indicating whether your X input is a distance matrix or not. Defaults to FALSE.
if is.dist == FALSE, a distance function to transform X. If a distance function is passed,
it should accept an [n x d] matrix of n samples in d dimensions and return a [n x n] distance matrix
as the $D return argument. See mgc.distance for details.
a list of trailing arguments to pass to the distance function specified in dist.xfm.
Defaults to list(method='euclidean').
the return argument for the specified dist.xfm containing the distance matrix. Defaults to FALSE.
is.null(dist.return)use the return argument directly from dist.xfm as the distance matrix. Should be a [n x n] matrix.
is.character(dist.return) | is.integer(dist.return)use dist.xfm[[dist.return]] as the distance matrix. Should be a [n x n] matrix.
whether to remove isolated samples, or samples with only a single instance in the Y vector.
A list containing the following:
DXThe X distance matrix, as a [n x n] matrix.
YThe sample ids, with isolates removed.