问题标签 [geosphere]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
129 浏览

r - Geosphere 的距离矩阵:避免重复计算

我想使用 from 计算一个非常大的矩阵中所有点之间的distm距离geosphere

看一个最小的例子:

问题是,由于我正在计算的距离的性质,distm给了我一个对称矩阵,因此,我可以避免计算超过一半的距离:

你能帮我找到一种更有效的方法来计算所有这些距离,避免每次做两次吗?

0 投票
2 回答
208 浏览

r - 计算匹配行的多个记录的两点之间的距离 - 循环两个矩阵的行

我有两个带有坐标的矩阵,我正在尝试计算匹配行中的点之间的距离,即第一个矩阵中的第 1 行和第二个矩阵中的第 1 行之间的距离。

我得到的是第 1 行和所有其他行之间的计算距离。这会造成内存问题,因为我有 800,000 行。有谁知道如何要求?

我在用

我正在尝试创建类似的东西,但似乎不起作用

变成

那是应该起作用的吗?

0 投票
1 回答
197 浏览

r - 计算两个 GPS 坐标之间的多个距离并将结果分类为两列

我是 R 新手,所以我希望这个问题足够有趣。我正在处理具有纬度和经度位置以及相关时间和日期的 GPS 位置数据。

以下是数据示例:

我想创建一个包含两列“Day”和“Night”的数据框,将一天中的时间划分为“Day”[6:00 到 18:00] 和“Night”[18:00 到 6:00] .

  • “天”列将根据 [6:00 至 18:00] 的 GPS 位置显示总行驶距离(以米为单位)

  • “夜间”列将包含基于 GPS 位置从 [18:00 到 6:00] 行驶的总距离(以米为单位)

我正在使用该包geosphere来计算两个位置之间的距离,但我不确定是否有更有效的函数来计算我的分析。请注意,GPS 位置需要几个月的时间,所以这是一个大数据集。

如果在此之前需要转换数据,也请告诉我。任何输入表示赞赏。

PS 大样本数据

0 投票
3 回答
724 浏览

r - 使用 R 计算步长

我想知道 R 中是否有计算步长的特定函数,即两个连续的 GPS 时间注册位置之间的距离(以米为单位)。

我有一个如下所示的数据集:

并且想创建一个列Step来执行上述操作。也许geosphere包有这样的功能?如果不是,那么最紧凑的方法是什么?

任何输入表示赞赏!

0 投票
3 回答
1220 浏览

r - 使用R中的distm()计算数据帧中两个GPS位置之间的距离

这个问题以前曾被问过,但从未使用以下数据排列。下面是它的一个示例:

如您所见,我有一Date & Time [Local]列平均每 4 分钟记录一次 GPS 位置。我想计算两个连续记录之间的距离(以米为单位)并将此度量存储在一个新列Step中。我一直在尝试distm()对我的数据实施:

虽然我非常不确定语法以及这是否是填充函数参数的正确方法。我对 R 很陌生,所以我希望能得到一些帮助。

任何输入表示赞赏!

0 投票
1 回答
107 浏览

r - 传单 R 结合标记和测地线(成对连接的坐标)

这是我的数据:

我可以将传单中的坐标与 geosphere 库成对连接
(根据How Do I connect two coordinates with a line using Leaflet in R

如何添加标记?

我试过这个没有成功:

0 投票
3 回答
2638 浏览

r - R查找两个美国邮政编码列之间的距离

我想知道计算两个美国邮政编码列之间距离(​​以英里为单位)的最有效方法是使用 R。

我听说过用于计算邮政编码之间差异的 geosphere 包,但并不完全理解它,并且想知道是否还有其他方法。

例如,假设我有一个看起来像这样的数据框。

我想创建一个看起来像这样的新数据框。

其中 x 是两个邮政编码之间的英里数差。

计算这个距离的最佳方法是什么?

这是创建示例数据框的 R 代码。

请让我知道,如果你有任何问题。

任何建议表示赞赏。

谢谢您的帮助。

0 投票
1 回答
349 浏览

r - 如何在短时间内计算一个数据集中的经纬度点与另一个数据集中的经纬度点之间的最短距离

我有两个数据集,一个有 488,286 行和经纬度坐标,另一个有 245,077 行和经纬度坐标。第二个还有与坐标相关的附加数据。我想在第二个数据集中找到最接近第一个数据集中的所有点。我不能分享原始数据,所以为了简单起见,我将在这里生成一些随机点:

我尝试只使用 distm 函数,但数据太大,所以我尝试像这样分解它:

我认为这行得通,但是运行需要很长时间,以至于我实际上没有看到结果(仅尝试使用数据的子集)。我真的需要一种更快的方法来执行此操作,因为我让它运行了 2 天但没有完成。它不必使用distm,只要更快更准确。

提前致谢!

0 投票
2 回答
72 浏览

r - 使用需要四个向量的函数在 R 中迭代

我正在尝试使用 geosphere 包中的 distHaversine 函数查找多个城市之间的距离。此代码需要各种参数:

第一个地方的经度和纬度。第二个地方的经度和纬度。以任何单位表示的地球半径(我使用 r = 3961 表示英里)。

当我将其作为向量输入时,它很容易工作:

但是,我的实际数据集如下所示:

我想要的是有行来说明每个目的地与该人当前位置的距离。

我知道必须有一种使用 purrr 的 pmap_dbl() 的方法,但我无法弄清楚。

如果您的代码使用 tidyverse,并且如果有任何简单的方法可以创建一个标识最近目的地的列,则可以加分。谢谢!

在一个理想的世界里,我会得到这个:

注意: dist 列中的数字是随机的;但是,它们将是 distHaversine() 函数的输出。这些列的名称是任意的——不需要这样称呼。另外,如果最近的列超出了这个问题的范围,我想我可以解决这个问题。

0 投票
0 回答
63 浏览

r - 将坐标合并到现有线中

我想将其他空间坐标合并到预先存在的空间线中。

我的数据:

  1. 表示海岸线的空间坐标。
  2. 表示观测的空间坐标。

观测值不一定与线上的坐标相匹配,因此我将观测值与线对齐。这为观察提供了一个新坐标:它在预先存在的线上的位置。

我想将这个新坐标合并到原始空间线数据中,在正确的位置,这样它就不会破坏原始坐标沿线的正确顺序。

我研究了sp对象操作,但无法弄清楚如何生成我所追求的数据结构。

例如:对于表示直线的 XY 坐标:

在哪里:

如果观察到的坐标是 XY[1,8],我希望:

合并后的数据为: