首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何根据坐标查找最近的位置

如何根据坐标查找最近的位置
EN

Stack Overflow用户
提问于 2021-03-28 08:42:31
回答 1查看 64关注 0票数 3

我有一个主数据库,里面有几个气象站。每个桩号都有以十进制度表示的坐标。下面只是一个例子,因为坐标是由

代码语言:javascript
运行
复制
stationid lon lat
1a        80  104
1b        84  110
1c        85  111

另外,我还有一个较小的包含位置的数据集。我需要将每个地方与主数据库中最近的气象站进行匹配(希望有指定的距离阈值)

代码语言:javascript
运行
复制
  place lon   lat 
  2a    80.5  104.1
  3b    83    109

因此,生成的较小的数据库将显示

代码语言:javascript
运行
复制
  place lon   lat    stationid
  2a    80.5  104.1  1a
  3b    83    109    1b

会很欣赏你的想法

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-28 09:31:37

试用geosphere::distm + max.col

代码语言:javascript
运行
复制
df2$stationid <- df1$stationid[max.col(-distm(rev(df2[-1]), rev(df1[-1])))]

这给了我们

代码语言:javascript
运行
复制
  place  lat   lon stationid
1    2a 80.5 104.1        1a
2    3b 83.0 109.0        1b
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66837461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档