pandas.Series.drop — pandas 2.2.3 documentation (original) (raw)
Series.drop(labels=None, *, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')[source]#
Return Series with specified index labels removed.
Remove elements of a Series based on specifying the index labels. When using a multi-index, labels on different levels can be removed by specifying the level.
Parameters:
labelssingle label or list-like
Index labels to drop.
axis{0 or ‘index’}
Unused. Parameter needed for compatibility with DataFrame.
indexsingle label or list-like
Redundant for application on Series, but ‘index’ can be used instead of ‘labels’.
columnssingle label or list-like
No change is made to the Series; use ‘index’ or ‘labels’ instead.
levelint or level name, optional
For MultiIndex, level for which the labels will be removed.
inplacebool, default False
If True, do operation inplace and return None.
errors{‘ignore’, ‘raise’}, default ‘raise’
If ‘ignore’, suppress error and only existing labels are dropped.
Returns:
Series or None
Series with specified index labels removed or None if inplace=True
.
Raises:
KeyError
If none of the labels are found in the index.
Examples
s = pd.Series(data=np.arange(3), index=['A', 'B', 'C']) s A 0 B 1 C 2 dtype: int64
Drop labels B en C
s.drop(labels=['B', 'C']) A 0 dtype: int64
Drop 2nd level label in MultiIndex Series
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