R中两个数据帧的行之间的欧几里得距离

2023-12-09

计算欧氏距离R简单。可以找到一个很好的例子HERE。矢量化形式为:

sqrt((known_data[, 1] - unknown_data[, 1])^2 + (known_data[, 2] - unknown_data[, 2])^2)

获得一个数据帧的每一行与另一个数据帧的所有行的欧几里德距离的最快、最有效的方法是什么?一个特定的函数来自apply()家庭?谢谢!


也许你可以尝试outer + dist像下面这样

outer(
  1:nrow(known_data),
  1:nrow(unknown_data),
  FUN = Vectorize(function(x,y) dist(rbind(known_data[x,],unknown_data[y,])))
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

R中两个数据帧的行之间的欧几里得距离 的相关文章

随机推荐