繁体   English   中英

如何计算两组数据之间的距离

[英]Howto calculate distance between two groups of data

我有2个数据帧 - 用L行学习数据和用T行测试数据。

我想计算一个L * T矩阵,其中包含相应元素之间的距离(欧几里德,曼哈顿,余弦......)。

这是我的看法:

distance2 <- function (x1, x2) {
            temp <- x1 - x2
            sum(temp * temp)
}

m <- matrix(0,nrow(learnData),nrow(testData))
for(td in 1:nrow(testData)) {
    for(ld in 1:nrow(learnData)) {
        m[ld,td] <- distance2(testData[td,],learnData[ld,])                 
    }
}

我认为这可以用更紧凑的“R”方式完成。 有任何想法吗? 谢谢。

我想到两个选择:

  1. 使用具有许多已经编码的这些相异系数的代理包,可以分别为两个数据帧计算这个
  2. 模拟包,具有函数distance() ,可以在两个数据帧(但不是余弦距离)上为您计算欧几里德和曼哈顿的度量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM