好吧,我将地理坐标编码为 geohash。我的目标是计算具有一定精度的距离。我正在尝试将 geohash_decode 回地理坐标,但我未能想出一个可以对数据框中的列执行此操作的函数
最佳答案
假设:
- 您询问的是有关 Python 的问题(如果这是 R、Scala 或其他数据框架问题,我们深表歉意,但您没有具体说明)
- 你有一个Python pandas DataFrame对象
df
df
有一个名为geohash
的列,其中包含您的 geohash- 您已安装并导入
geohash2
库(这可能适用于其他 Geohash 库...) - 您想要使用包含所有旧数据以及新的
纬度
和经度
列的新DataFrame覆盖df
以下应该有效:
def gh_decode(hash):
lat, lon = geohash2.decode(hash)
return pd.Series({"latitude":lat, "longitude":lon})
df = df.join(df["geohash"].apply(gh_decode))
关于machine-learning - 将 geohash_decode 函数应用于数据框中的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55951182/