我正在尝试创建一个每行 2 个邮政编码的 GeoDataFrame,我想比较它们之间的距离。我列出了大约 220 个邮政编码的列表,并对它们运行了 itertools 组合以获取所有组合,然后将元组解压为两列
code_combo = list(itertools.combinations(df_with_all_zip_codes['code'], 2))
df_distance_ctr = pd.DataFrame(code_combo, columns=['first_code','second_code'])
Run Code Online (Sandbox Code Playgroud)
然后我做了一些标准的 Pandas 合并和列重命名,以将多边形/几何列从原始地理数据框中获取到这个新的,就在相应的邮政编码列旁边。问题是我似乎无法将多边形列读取为几何体,即使在 1.) 尝试将数据框转换为地理数据框之后 - AttributeError: No geometry data set yet , 2.) 将 wkt.loads 应用到几何列 - AttributeError: 'MultiPolygon' object has no attribute 'encode' 。 我试图寻找一种将系列转换为 geoseries 的方法,但在 SO 和文档上都找不到任何内容。谁能指出我可能出错的地方?