R/dimred_dm_diffusionmap.R

Defines functions dimred_dm_diffusionmap

Documented in dimred_dm_diffusionmap

#' @rdname dimred
#' @export
#'
#' @importFrom stats as.dist
dimred_dm_diffusionmap <- function(
  x,
  ndim = 2,
  distance_method
) {
  requireNamespace("diffusionMap")

  distance_method <- match.arg(distance_method)
  dist <- calculate_distance(x, method = distance_method)

  space <- diffusionMap::diffuse(as.dist(dist), neigen = ndim, delta = 10e-5)$X

  .process_dimred(space[,seq_len(ndim)], rownames(x))
}

formals(dimred_dm_diffusionmap)$distance_method <- dynutils::list_distance_methods()

Try the dyndimred package in your browser

Any scripts or data that you put into this service are public.

dyndimred documentation built on March 23, 2021, 9:06 a.m.