Pandas: как удалить дубликаты в нескольких столбцах


Вы можете использовать следующие методы для удаления повторяющихся строк в нескольких столбцах в DataFrame pandas:

Способ 1. Удаление дубликатов во всех столбцах.

 df. drop_duplicates ()

Способ 2. Удаление дубликатов в определенных столбцах

 df. drop_duplicates ([' column1 ',' column3 '])

В следующих примерах показано, как использовать каждый метод на практике со следующим DataFrame pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' region ': ['East', 'East', 'East', 'West', 'West', 'West'],
                   ' store ': [1, 1, 2, 1, 2, 2],
                   ' sales ': [5, 5, 7, 9, 12, 8]})

#view DataFrame
print (df)

  region store sales
0 East 1 5
1 East 1 5
2 East 2 7
3 West 1 9
4 West 2 12
5 West 2 8

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

Следующий код показывает, как удалить строки с повторяющимися значениями во всех столбцах:

 #drop rows that have duplicate values across all columns
df. drop_duplicates ()

	region store sales
0 East 1 5
2 East 2 7
3 West 1 9
4 West 2 12
5 West 2 8

Строка в позиции индекса 1 имела те же значения во всех столбцах, что и строка в позиции индекса 0, поэтому она была удалена из DataFrame.

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

 #drop rows that have duplicate values across all columns (keep last duplicate)
df. drop_duplicates (keep=' last ')

	region store sales
1 East 1 5
2 East 2 7
3 West 1 9
4 West 2 12
5 West 2 8

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

Вы можете использовать следующий код для удаления строк с повторяющимися значениями только в регионе и сохранения столбцов:

 #drop rows that have duplicate values across region and store columns
df. drop_duplicates ([' region ',' store '])

	region store sales
0 East 1 5
2 East 2 7
3 West 1 9
4 West 2 12

Всего из DataFrame были удалены две строки, поскольку они содержали повторяющиеся значения в столбцах «Регион» и «Магазин» .

Примечание . Полную документацию по функции drop_duplications() можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:

Как найти дубликаты в пандах
Как удалить повторяющиеся столбцы в Pandas
Как удалить первую строку в Pandas DataFrame

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *