ペアワイズ距離
- d次元空間に2つの点集合があるとする
- 2つの点集合の要素ワイズペアの距離を求めたい
d <- 3 X1 <- matrix(rnorm(2*d),ncol=d) X2 <- matrix(rnorm(4*d),ncol=d) my.dist.pair <- function(X1,X2){ L1 <- apply(X1^2,1,sum) L2 <- apply(X2^2,1,sum) IP <- X1 %*% t(X2) sqrt(outer(L1,L2,"+") - 2 * IP) } my.dist.pair(X1,X2) for(i in 1:length(X1[,1])){ for(j in 1:length(X2[,1])){ print(sqrt(sum((X1[i,]-X2[j,])^2))) } }