geopandas.GeoDataFrame.explode#
- GeoDataFrame.explode(column=None, ignore_index=False, index_parts=False, **kwargs)[来源]#
将多部分几何体分解为多个单独的几何体。
每个包含多部分几何图形的行将被拆分成多个单几何图形的行,从而增加GeoDataFrame的垂直大小。
- Parameters:
- columnstring, default None
要展开的列。如果是几何列,则多部分几何体被转换为单部分。如果为 None,则使用活动几何列。
- ignore_indexbool, default False
如果为 True,结果索引将标记为 0, 1, …, n - 1,忽略 index_parts。
- index_partsboolean, default False
如果为True,结果索引将是一个多重索引(原始索引加上一个额外的级别,指示多个几何体:每个多部分几何体的每个单一部分几何体都有一个新的零基索引)。
- Returns:
- GeoDataFrame
每个单独几何体作为地理数据框中单独条目的扩展地理数据框。
另请参阅
GeoDataFrame.dissolve
将几何形状合并为单个观察值。
示例
>>> from shapely.geometry import MultiPoint >>> d = { ... "col1": ["name1", "name2"], ... "geometry": [ ... MultiPoint([(1, 2), (3, 4)]), ... MultiPoint([(2, 1), (0, 0)]), ... ], ... } >>> gdf = geopandas.GeoDataFrame(d, crs=4326) >>> gdf col1 geometry 0 name1 MULTIPOINT ((1 2), (3 4)) 1 name2 MULTIPOINT ((2 1), (0 0))
>>> exploded = gdf.explode(index_parts=True) >>> exploded col1 geometry 0 0 name1 POINT (1 2) 1 name1 POINT (3 4) 1 0 name2 POINT (2 1) 1 name2 POINT (0 0)
>>> exploded = gdf.explode(index_parts=False) >>> exploded col1 geometry 0 name1 POINT (1 2) 0 name1 POINT (3 4) 1 name2 POINT (2 1) 1 name2 POINT (0 0)
>>> exploded = gdf.explode(ignore_index=True) >>> exploded col1 geometry 0 name1 POINT (1 2) 1 name1 POINT (3 4) 2 name2 POINT (2 1) 3 name2 POINT (0 0)