pandas 1.4.2

ParametersRaisesReturnsBackRef
drop(self, labels=None, axis: 'Axis' = 0, index=None, columns=None, level: 'Level | None' = None, inplace: 'bool' = False, errors: 'str' = 'raise')

Remove rows or columns by specifying label names and corresponding axis, or by specifying directly index or column names. When using a multi-index, labels on different levels can be removed by specifying the level. See the :None:None:`user guide <advanced.shown_levels>` for more information about the now unused levels.

Parameters

labels : single label or list-like

Index or column labels to drop. A tuple will be used as a single label and not treated as a list-like.

axis : {0 or 'index', 1 or 'columns'}, default 0

Whether to drop labels from the index (0 or 'index') or columns (1 or 'columns').

index : single label or list-like

Alternative to specifying axis ( labels, axis=0 is equivalent to index=labels ).

columns : single label or list-like

Alternative to specifying axis ( labels, axis=1 is equivalent to columns=labels ).

level : int or level name, optional

For MultiIndex, level from which the labels will be removed.

inplace : bool, default False

If False, return a copy. Otherwise, do operation inplace and return None.

errors : {'ignore', 'raise'}, default 'raise'

If 'ignore', suppress error and only existing labels are dropped.

Raises

KeyError

If any of the labels is not found in the selected axis.

Returns

DataFrame or None

DataFrame without the removed index or column labels or None if inplace=True .

Drop specified labels from rows or columns.

See Also

DataFrame.drop_duplicates

Return DataFrame with duplicate rows removed, optionally only considering certain columns.

DataFrame.dropna

Return DataFrame with labels on given axis omitted where (all or any) data are missing.

DataFrame.loc

Label-location based indexer for selection by label.

Series.drop

Return Series with specified index labels removed.

Examples

This example is valid syntax, but we were not able to check execution
>>> df = pd.DataFrame(np.arange(12).reshape(3, 4),
...  columns=['A', 'B', 'C', 'D'])
... df A B C D 0 0 1 2 3 1 4 5 6 7 2 8 9 10 11

Drop columns

This example is valid syntax, but we were not able to check execution
>>> df.drop(['B', 'C'], axis=1)
   A   D
0  0   3
1  4   7
2  8  11
This example is valid syntax, but we were not able to check execution
>>> df.drop(columns=['B', 'C'])
   A   D
0  0   3
1  4   7
2  8  11

Drop a row by index

This example is valid syntax, but we were not able to check execution
>>> df.drop([0, 1])
   A  B   C   D
2  8  9  10  11

Drop columns and/or rows of MultiIndex DataFrame

This example is valid syntax, but we were not able to check execution
>>> midx = pd.MultiIndex(levels=[['lama', 'cow', 'falcon'],
...  ['speed', 'weight', 'length']],
...  codes=[[0, 0, 0, 1, 1, 1, 2, 2, 2],
...  [0, 1, 2, 0, 1, 2, 0, 1, 2]])
... df = pd.DataFrame(index=midx, columns=['big', 'small'],
...  data=[[45, 30], [200, 100], [1.5, 1], [30, 20],
...  [250, 150], [1.5, 0.8], [320, 250],
...  [1, 0.8], [0.3, 0.2]])
... df big small lama speed 45.0 30.0 weight 200.0 100.0 length 1.5 1.0 cow speed 30.0 20.0 weight 250.0 150.0 length 1.5 0.8 falcon speed 320.0 250.0 weight 1.0 0.8 length 0.3 0.2

Drop a specific index combination from the MultiIndex DataFrame, i.e., drop the combination 'falcon' and 'weight' , which deletes only the corresponding row

This example is valid syntax, but we were not able to check execution
>>> df.drop(index=('falcon', 'weight'))
                big     small
lama    speed   45.0    30.0
        weight  200.0   100.0
        length  1.5     1.0
cow     speed   30.0    20.0
        weight  250.0   150.0
        length  1.5     0.8
falcon  speed   320.0   250.0
        length  0.3     0.2
This example is valid syntax, but we were not able to check execution
>>> df.drop(index='cow', columns='small')
                big
lama    speed   45.0
        weight  200.0
        length  1.5
falcon  speed   320.0
        weight  1.0
        length  0.3
This example is valid syntax, but we were not able to check execution
>>> df.drop(index='length', level=1)
                big     small
lama    speed   45.0    30.0
        weight  200.0   100.0
cow     speed   30.0    20.0
        weight  250.0   150.0
falcon  speed   320.0   250.0
        weight  1.0     0.8
See :

Back References

The following pages refer to to this document either explicitly or contain code examples using this.

pandas.core.frame.DataFrame.reset_index

Local connectivity graph

Hover to see nodes names; edges to Self not shown, Caped at 50 nodes.

Using a canvas is more power efficient and can get hundred of nodes ; but does not allow hyperlinks; , arrows or text (beyond on hover)

SVG is more flexible but power hungry; and does not scale well to 50 + nodes.

All aboves nodes referred to, (or are referred from) current nodes; Edges from Self to other have been omitted (or all nodes would be connected to the central node "self" which is not useful). Nodes are colored by the library they belong to, and scaled with the number of references pointing them


File: /pandas/core/frame.py#4806
type: <class 'function'>
Commit: