【发布时间】:2011-12-02 14:35:53
【问题描述】:
我有一个函数 distance(lat1,lon1, lat2,lon2) 计算 2 个点的距离。
假设我有一个包含一些点和值的数据框:
n<-c(lon = -1.729219, lat = 29.730836)
o<-c(lon = -5.041928, lat = 28.453022)
e<-c(lon = -2.700067, lat = 29.198922)
s<-c(lon = -5.212864, lat = 28.531739)
centro<-matrix(c(n,o,e,s), ncol=2, byrow=TRUE)
d<-data.frame(c=centro, amount=c(3.5,3.5,3.5,3.5), count=c(12,12,12,12))
colnames(d)<-c('lon','lat','amount','count')
我想获得一个新的框架集,其中的值聚合到其中最接近的一个(我不在乎)
假设我的 rad 为 10 公里,n 和 o 的距离为 7,e 和 s 与任何其他点的距离为 20,我期望一个具有 3 个值的新数据框: e、s 和一个带有数量的新值,并计算其他 2 和 lat 和 long 的总和,无论是来自 n 的还是来自 o 的。
我想在 R 中有一种简单的方法可以做到这一点,但我找不到。
谢谢
【问题讨论】:
-
您能否提供场景的预期输出?我不清楚你在说什么。
-
您关心“大圆”距离还是这些点足够接近以使用欧几里得距离?
标签: r distance latitude-longitude