Spec-Zone.ru › pandas 2

pandas.DataFrame.drop

DataFrame.drop(labels=None, *, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')[source]

Удаление указанных меток из строк или столбцов.

Удаление строк или столбцов, указанием имён меток и соответствующей оси, или непосредственно указанием индексов или имён столбцов. При использовании многоуровневого индекса, метки на разных уровнях можно удалить, указав уровень. Подробнее об уровне, который теперь не используется, смотрите в руководстве пользователя.

Параметры:
labels:одна метка или список

Индексы или метки столбцов для удаления. Кортеж будет использован как одна метка и не будет рассматриваться как список.

axis:{0 или ‘index’, 1 или ‘columns’}, по умолчанию 0

Удалять метки из индекса (0 или ‘index’) или столбцов (1 или ‘columns’).

index:одна метка или список

Альтернатива указанию оси (labels, axis=0 эквивалентно index=labels).

columns:одна метка или список

Альтернатива указанию оси (labels, axis=1 эквивалентно columns=labels).

level:целое число или имя уровня, необязательно

Для MultiIndex, уровень, из которого будут удалены метки.

inplace:bool, по умолчанию False

Если False, возвращает копию. В противном случае, выполняет операцию на месте и возвращает None.

errors:{‘ignore’, ‘raise’}, по умолчанию ‘raise’

Если ‘ignore’, подавляет ошибку и удаляются только существующие метки.

Возвращаемое значение:
DataFrame или None

Возвращает DataFrame или None DataFrame с удаленными указанными метками индекса или столбцов или None, если inplace=True.

Исключения:
KeyError

Если любая из меток не найдена на выбранной оси.

См. также

DataFrame.loc

Индексатор, основанный на метках для выбора по метке.

DataFrame.dropna

Возвращает DataFrame с опущенными метками на заданной оси, где отсутствуют (все или любые) данные.

DataFrame.drop_duplicates

Возвращает DataFrame с удалёнными дублирующими строками, при необходимости, учитывая только определённые столбцы.

Series.drop

Возвращает Series с удалёнными указанными метками индекса.

Примеры

>>> 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

Удаление столбцов

>>> df.drop(['B', 'C'], axis=1)
   A   D
0  0   3
1  4   7
2  8  11
>>> df.drop(columns=['B', 'C'])
   A   D
0  0   3
1  4   7
2  8  11

Удаление строки по индексу

>>> df.drop([0, 1])
   A  B   C   D
2  8  9  10  11

Удаление столбцов и/или строк DataFrame с 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]])
>>> 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
llama   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

Удаление конкретной комбинации индекса из DataFrame с MultiIndex, т.е. удаление комбинации 'falcon' и 'weight', что удаляет только соответствующую строку

>>> df.drop(index=('falcon', 'weight'))
                big     small
llama   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
>>> df.drop(index='cow', columns='small')
                big
llama   speed   45.0
        weight  200.0
        length  1.5
falcon  speed   320.0
        weight  1.0
        length  0.3
>>> df.drop(index='length', level=1)
                big     small
llama   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

© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.2.2/reference/api/pandas.DataFrame.drop.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API