R中的COSH距离

COSH distance in R

我有一个 3600x513 的矩阵,我想确定行之间的距离以便能够聚类。我的问题是我想使用 COSH 距离,它在 R 的 dist() 函数中不可用。

我的问题是:

  1. 是否可以创建我自己的 COSH 函数并在 dist() 函数上调用它,然后使用 hclust() 函数?
  2. 我有另一个矩阵,其中包含由 MATLAB 计算的 COSH 距离。我可以用我之前计算的距离替换 dist() 的输出值吗?

我将添加来自 CrossValidated 的 post 以提高可见性 (original post):

set.seed(1)
mat <- matrix(runif(5))
fn <- function(x, y) 1 - cos(x - y)

proxy::dist(mat, method = fn)

proxy 允许您将 dist 与自定义函数一起使用