dist2 {ComplexHeatmap} | R Documentation |
Calculate pairwise distance from a matrix
dist2(mat, pairwise_fun = function(x, y) sqrt(sum((x - y)^2)), ...)
mat |
a matrix. The distance is calculated by rows. |
pairwise_fun |
a function which calculates distance between two vectors. |
... |
pass to |
You can construct any type of distance measurements by defining a pair-wise distance function.
The function is implemented by two nested for
loops, so the efficiency may not be so good.
A dist
object.
Zuguang Gu <z.gu@dkfz.de>
mat = matrix(rnorm(40), nr = 4, ncol = 10) rownames(mat) = letters[1:4] colnames(mat) = letters[1:10] d2 = dist2(mat) d2 = dist2(mat, pairwise_fun = function(x, y) 1 - cor(x, y)) # distance only calculated within 10 and 90 quantile of each vector d2 = dist2(mat, pairwise_fun = function(x, y) { q1 = quantile(x, c(0.1, 0.9)) q2 = quantile(y, c(0.1, 0.9)) l = x > q1[1] & x < q1[2] & y > q2[1] & y < q2[2] sqrt(sum((x[l] - y[l])^2)) })