【问题标题】:Measuring distances between coordinates in 3d with R?用R测量3d坐标之间的距离?
【发布时间】:2021-09-28 19:37:08
【问题描述】:

我有一个与此不同的数据框:

X   Y   Z    Point
1   1   1    1
2   1   1    2
1   2   1    3
1   1   10   4

我正在尝试确定这些不同点之间的距离,并使用 stats::dist() 函数计算了每个点之间的欧几里得距离。计算出的距离如下:

#Calculating distances
df <- dist(data, method = "euclidean")
#Output
df
         1        2        3
2 1.414214                  
3 2.236068 1.732051         
4 9.486833 9.273618 9.110434

但是,比较点 1 与 2 或 3 的距离应为 1,比较 1 与 4 的距离应为 9。我不确定是否存在某种形式的归一化或一个轴的权重大于另一个?我希望能帮助我找到这些坐标的距离,以便我可以将其扩展到更大的数据集!

【问题讨论】:

    标签: r


    【解决方案1】:

    在计算距离时,您还包括Point 列。 data 中坐标的子集,例如data[,1:3]data[,-4]

    dist(data[,1:3], method = "euclidean")
    #         1        2        3
    #2 1.000000                  
    #3 1.000000 1.414214         
    #4 9.000000 9.055385 9.055385
    

    【讨论】:

    • 太棒了!这次真是万分感谢!我知道我一定错过了这样的东西!
    猜你喜欢
    • 2018-04-01
    • 2021-09-08
    • 1970-01-01
    • 2012-04-20
    • 1970-01-01
    • 2021-10-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多