geopandas.GeoSeries.fillna#

GeoSeries.fillna(value=None, inplace=False, limit=None, **kwargs)[来源]#

使用几何图形(或几何体)填充NA值。

Parameters:
valueshapely geometry or GeoSeries, default None

如果传入 None,NA 值将被填充为 GEOMETRYCOLLECTION EMPTY。如果传入了一个 shapely 几何对象,它将用于填充所有缺失值。如果传入一个 GeoSeriesGeometryArray,缺失值将根据对应的索引位置进行填充。如果传入 pd.NA 或 np.nan,值将被填充为 None(而不是 GEOMETRYCOLLECTION EMPTY)。

limitint, default None

这是在整个轴上填充 NaN 的最大条目数。如果不是 None,则必须大于 0。

Returns:
GeoSeries

另请参阅

GeoSeries.isna

检测缺失值

示例

>>> from shapely.geometry import Polygon
>>> s = geopandas.GeoSeries(
...     [
...         Polygon([(0, 0), (1, 1), (0, 1)]),
...         None,
...         Polygon([(0, 0), (-1, 1), (0, -1)]),
...     ]
... )
>>> s
0      POLYGON ((0 0, 1 1, 0 1, 0 0))
1                                None
2    POLYGON ((0 0, -1 1, 0 -1, 0 0))
dtype: geometry

充满了一个空的多边形。

>>> s.fillna()
0      POLYGON ((0 0, 1 1, 0 1, 0 0))
1            GEOMETRYCOLLECTION EMPTY
2    POLYGON ((0 0, -1 1, 0 -1, 0 0))
dtype: geometry

填充特定多边形。

>>> s.fillna(Polygon([(0, 1), (2, 1), (1, 2)]))
0      POLYGON ((0 0, 1 1, 0 1, 0 0))
1      POLYGON ((0 1, 2 1, 1 2, 0 1))
2    POLYGON ((0 0, -1 1, 0 -1, 0 0))
dtype: geometry

填充了另一个GeoSeries。

>>> from shapely.geometry import Point
>>> s_fill = geopandas.GeoSeries(
...     [
...         Point(0, 0),
...         Point(1, 1),
...         Point(2, 2),
...     ]
... )
>>> s.fillna(s_fill)
0      POLYGON ((0 0, 1 1, 0 1, 0 0))
1                         POINT (1 1)
2    POLYGON ((0 0, -1 1, 0 -1, 0 0))
dtype: geometry