pandas.Series.drop#

Series.drop(labels=None, *, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')[源代码][源代码]#

返回移除了指定索引标签的系列。

根据指定的索引标签移除 Series 中的元素。当使用多级索引时,可以通过指定级别来移除不同级别的标签。

参数:
标签单个标签或类似列表

要删除的索引标签。

{0 或 ‘index’}

未使用。参数需要与 DataFrame 兼容。

索引单个标签或类似列表

在应用于 Series 时是多余的,但可以使用 ‘index’ 代替 ‘labels’。

单个标签或类似列表

不对 Series 进行更改;请改用 ‘index’ 或 ‘labels’。

级别整数或级别名称,可选

对于 MultiIndex,将移除标签的级别。

inplacebool, 默认 False

如果为真,就地执行操作并返回 None。

错误{‘ignore’, ‘raise’}, 默认 ‘raise’

如果为 ‘ignore’,则抑制错误并且仅删除现有标签。

返回:
系列或无

如果 inplace=True,则移除指定索引标签的系列或为 None。

引发:
KeyError

如果在索引中找不到任何标签。

参见

Series.reindex

仅返回指定索引标签的系列。

Series.dropna

返回不包含空值的序列。

Series.drop_duplicates

返回删除了重复值的系列。

DataFrame.drop

从行或列中删除指定的标签。

例子

>>> s = pd.Series(data=np.arange(3), index=["A", "B", "C"])
>>> s
A  0
B  1
C  2
dtype: int64

删除标签 B 和 C

>>> s.drop(labels=["B", "C"])
A  0
dtype: int64

在 MultiIndex 系列中删除第二级标签

>>> midx = pd.MultiIndex(
...     levels=[["llama", "cow", "falcon"], ["speed", "weight", "length"]],
...     codes=[[0, 0, 0, 1, 1, 1, 2, 2, 2], [0, 1, 2, 0, 1, 2, 0, 1, 2]],
... )
>>> s = pd.Series([45, 200, 1.2, 30, 250, 1.5, 320, 1, 0.3], index=midx)
>>> s
llama   speed      45.0
        weight    200.0
        length      1.2
cow     speed      30.0
        weight    250.0
        length      1.5
falcon  speed     320.0
        weight      1.0
        length      0.3
dtype: float64
>>> s.drop(labels="weight", level=1)
llama   speed      45.0
        length      1.2
cow     speed      30.0
        length      1.5
falcon  speed     320.0
        length      0.3
dtype: float64