我想弄清楚我的数据集中的某些特定点是如何隔离的。我使用两种方法确定隔离度,最近邻居的距离以及给定半径内相邻站点的数量。我所有的坐标都在纬度和经度R - 在给定的半径内找到最近的邻近点和邻居数,坐标经纬度为
这是我的数据是这样的:
pond lat long area canopy avg.depth neighbor n.lat n.long n.distance n.area n.canopy n.depth n.avg.depth radius1500
A10 41.95928 -72.14605 1500 66 60.61538462
AA006 41.96431 -72.121 250 0 57.77777778
Blacksmith 41.95508 -72.123803 361 77 71.3125
Borrow.Pit.1 41.95601 -72.15419 0 0 41.44444444
Borrow.Pit.2 41.95571 -72.15413 0 0 37.7
Borrow.Pit.3 41.95546 -72.15375 0 0 29.22222222
Boulder 41.918223 -72.14978 1392 98 43.53333333
我想把最近邻池的名字在列的邻居,它的纬度和长在正。 lat和n.long,n.distance中两个池塘之间的距离以及每个相应列中的面积,冠层和平均深度。
其次,我想把目标池塘1500m范围内的池塘数量设置为半径1500。
有没有人知道一个函数或包能够帮助我计算出我想要的距离/数字?如果这是个问题,输入我需要的其他数据并不难,但最近邻居的名字和距离以及1500米内的池塘数量是我真正需要帮助的。
谢谢。
非常感谢。你建议的库正是我需要的! – user2934942
这是一些非常丰富和可读的代码,谢谢!然而,我无法将它调整为稍微不同的用例:我需要找到两个不同数据集之间的最近点(我有一个推文数据集,并且我需要距每个推文最近的城市)。我应该改变什么? – jesusiniesta
函数'gDistance'可以带两个参数 - 在你的情况下是推文和城市。由此产生的矩阵应该有两个之间的所有成对距离(但要注意,如果你有成千上万的点,这可能是太多的个人电脑) – Zbynek