我有包含X和Y坐标对的大型数据框,希望计算连续坐标之间的欧氏距离(最小大小约为2000对坐标)。
因此,我想要计算从第1行到第2行,从第2行到第3行,从第3行到第4行等的距离。 这个问题很好地展示了如何计算轨迹数据的第一个点和最后一个点之间的欧几里得距离,但我的数据更接近于:
因此,我想要计算从第1行到第2行,从第2行到第3行,从第3行到第4行等的距离。 这个问题很好地展示了如何计算轨迹数据的第一个点和最后一个点之间的欧几里得距离,但我的数据更接近于:
dff <- structure(list(A = c(0L, 0L, 0L, 0L, 0L, 0L), T = 0:5, X = c(668L, 670L, 672L, 674L, 676L, 678L), Y = c(259L, 259L, 259L, 259L, 259L, 260L), V = c(NA, 0, 0, 0, 0, 0)), .Names = c("A", "T", "X", "Y", "V"), row.names = c(NA, 6L), class = "data.frame")
看起来应该有一种方法可以创建一个循环来完成这项任务,但我不确定如何对此进行下标。对于这样大小的数据集使用dist()
是计算量很大的,而且我也不确定如何提取与对角线差为1的矩阵元素。
sp
包吗? - Frank