我想计算任意数量(即 n )尺寸的点与线之间的距离。
找到了2和3维的优秀示例here。
有没有办法将此解决方案推广到更多维度?我已经看到其他解决方案previously,但我不确定如何在R中使用它。
非常感谢,
肯
答案 0 :(得分:0)
根据原始问题中的解决方案,我找到了答案。在这里为未来的读者发布R代码。
两点,A和B,定义感兴趣的线(这里长度为10)
A <- runif(10, 0.0, 1.0)
B <- runif(10, 0.0, 1.0)
确定以下点的距离,P
P <- runif(10, 0.0, 1.0)
然后通过在原始问题中发布的解决方案
pa = P - A
ba = B - A
t = as.vector((pa %*% ba) / (ba %*% ba))
d = (pa - t * ba)
最后,通过取其元素的平方和,然后是平方根来确定d的长度,感兴趣的矢量
dist = sqrt(sum(d^2))
dist # the solution`