Как выбрать уникальные строки в Pandas DataFrame
Вы можете использовать следующий синтаксис для выбора уникальных строк в кадре данных pandas:
df = df.drop_duplicates ()
И вы можете использовать следующий синтаксис для выбора уникальных строк в определенных столбцах в кадре данных pandas:
df = df.drop_duplicates (subset=['col1', 'col2', ...])**
В следующих примерах показано, как использовать этот синтаксис на практике со следующими пандами DataFrame:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'a': [4, 4, 3, 8],
'b': [2, 2, 6, 8],
'c': [2, 2, 9, 9]})
#view DataFrame
df
a b c
0 4 2 2
1 4 2 2
2 3 6 9
3 8 8 9
Пример 1. Выбор уникальных строк во всех столбцах
В следующем коде показано, как выбрать уникальные строки во всех столбцах кадра данных pandas:
#drop duplicates from DataFrame
df = df.drop_duplicates ()
#view DataFrame
df
a b c
0 4 2 2
2 3 6 9
3 8 8 9
Первая и вторая строки были дубликатами, поэтому Pandas удалили вторую строку.
По умолчанию функция drop_duplicates() сохранит первый дубликат. Однако вместо этого вы можете указать сохранить последний дубликат:
#drop duplicates from DataFrame, keep last duplicate
df = df.drop_duplicates (keep='last')
#view DataFrame
df
a b c
1 4 2 2
2 3 6 9
3 8 8 9
Пример 2. Выбор уникальных строк в определенных столбцах
В следующем коде показано, как выбрать уникальные строки только в столбце «c» в DataFrame:
#drop duplicates from column 'c' in DataFrame
df = df.drop_duplicates (subset=['c'])
#view DataFrame
df
a b c
0 4 2 2
2 3 6 9
Две строки были удалены из DataFrame.
Дополнительные ресурсы
Как выбрать строки по индексу в Pandas DataFrame
Как получить номера строк в кадре данных Pandas
Как найти уникальные значения в столбце в Pandas