如何使用 pandas 中的 python 解码 geohash?

How to decode geohash using python in pandas?

我需要代码来解码 python 中的 geohash。有一列包含 geohashes。我需要将它们解码为纬度和经度。

您可以使用 pip

从 pypi 安装 pygeohash
$ pip install pygeohash

然后用纬度和经度向数据框添加一个新列

import pygeohash as pgh
# ...
# location is a new column filled with (lat, lon) tuples
df['location'] = df.apply(lambda rec: pgh.decode(rec['geohash']), axis=1)

此处 'geohash' 是包含 geohashes 的列。

这个解决方案是高效的:

import pygeohash 
import numpy as np 

def dehashingit(x): 
      return pygeohash.decode(x)

func= np.vectorize(dehashingit) 

df['dehash'] = func(df.geohash.values)