我需要在两个地理数据框之间执行成对包含的操作。 geo_listings
包含点几何,geo_listings_buffer
包含与在第一个数据帧上运行buffer
的结果相对应的多边形几何。
contains
函数在执行元素操作后返回一个Series。我想返回一个方阵。
到目前为止,我拥有此代码,该代码可以正常运行,但速度非常:
pair_contains = np.zeros((geo_listings.shape[0],geo_listings.shape[0]))
for i, row in geo_listings.iterrows():
pair_contains[i,:] = geo_listings_buffer.contains(row['geometry'])
我大约有8000行,此代码需要8-9分钟才能运行。
任何改善这一点的方法都会有所帮助。