Spec-Zone.ru › pandas 2

pandas.DataFrame.drop_duplicates

DataFrame.drop_duplicates(subset=None, *, keep='first', inplace=False, ignore_index=False)[source]

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

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

Параметры:
subset:имя столбца или последовательность имён, необязательно

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

keep:{‘first’, ‘last’, False}, по умолчанию ‘first’

Определяет, какие дубликаты (если таковые имеются) сохранить.

  • ‘first’ : Удалить дубликаты, за исключением первого вхождения.

  • ‘last’ : Удалить дубликаты, за исключением последнего вхождения.

  • False : Удалить все дубликаты.

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

Изменить DataFrame вместо создания нового.

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

Если True, результирующая ось будет иметь метки 0, 1, …, n - 1.

Возвращает:
DataFrame или None

DataFrame с удалёнными дубликатами или None, если inplace=True.

См. также

DataFrame.value_counts

Подсчитать уникальные комбинации столбцов.

Примеры

Рассмотрим набор данных, содержащий рейтинг рамена.

>>> df = pd.DataFrame({
...     'brand': ['Yum Yum', 'Yum Yum', 'Indomie', 'Indomie', 'Indomie'],
...     'style': ['cup', 'cup', 'cup', 'pack', 'pack'],
...     'rating': [4, 4, 3.5, 15, 5]
... })
>>> df
    brand style  rating
0  Yum Yum   cup     4.0
1  Yum Yum   cup     4.0
2  Indomie   cup     3.5
3  Indomie  pack    15.0
4  Indomie  pack     5.0

По умолчанию он удаляет дубликаты строк, основанные на всех столбцах.

>>> df.drop_duplicates()
    brand style  rating
0  Yum Yum   cup     4.0
2  Indomie   cup     3.5
3  Indomie  pack    15.0
4  Indomie  pack     5.0

Чтобы удалить дубликаты по определённому(ым) столбцу(ам), используйте subset.

>>> df.drop_duplicates(subset=['brand'])
    brand style  rating
0  Yum Yum   cup     4.0
2  Indomie   cup     3.5

Чтобы удалить дубликаты и сохранить последние вхождения, используйте keep.

>>> df.drop_duplicates(subset=['brand', 'style'], keep='last')
    brand style  rating
1  Yum Yum   cup     4.0
2  Indomie   cup     3.5
4  Indomie  pack     5.0

© 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_duplicates.html

Spec-Zone.ru

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