Geopandas:如何将列几何形状转换为字符串?

ema*_*max 6 python pandas shapely geopandas

我有一个 geopandas 数据框

    geometry                                           idx
0   POLYGON ((-74.25559 40.91553, -74.24559 40.915...   0
1   POLYGON ((-74.25559 40.90553, -74.24559 40.905...   1
2   POLYGON ((-74.25559 40.89553, -74.24559 40.895...   2
3   POLYGON ((-74.25559 40.88553, -74.24559 40.885...   3
4   POLYGON ((-74.25559 40.87553, -74.24559 40.875...   4
Run Code Online (Sandbox Code Playgroud)

在哪里

gridDF['geometry'][0]
 <shapely.geometry.polygon.Polygon at 0x7fa4cc6ccc50>
Run Code Online (Sandbox Code Playgroud)

我想将列中的条目转换geometry为字符串。

Mat*_*ish 6

如果您想一次执行所有行,可以使用 apply。

from shapely import wkt
gridDF['str_geom'] = gridDF.geometry.apply(lambda x: wkt.dumps(x))
Run Code Online (Sandbox Code Playgroud)

  • 也可以将其写为 ```gridDF['str_geom'] = gridDF['geometry'].apply(wkt.dumps) ``` `wkt.dumps` 已经是一个函数,因此不需要将其编写在拉姆达 (2认同)

小智 0

我认为你可以使用这个功能:shapely.wkt.dumps

例子:

from shapely import wkt
wkt_string = wkt.dumps(gridDF['geometry'][0])
print(wkt_string)
Run Code Online (Sandbox Code Playgroud)

应该wkt_string是 wkt 格式的字符串形式的几何图形。