Вы можете использовать следующие методы для подсчета дубликатов в pandas DataFrame:
Метод 1: подсчет повторяющихся значений в одном столбце
len(df['my_column'])- len(df['my_column']. drop_duplicates ())
Способ 2: подсчет повторяющихся строк
len(df)- len(df.drop_duplicates ())
Способ 3: подсчет дубликатов для каждой уникальной строки
df.groupby (df.columns.tolist (), as_index= False ). size ()
В следующих примерах показано, как использовать каждый метод на практике со следующими пандами DataFrame:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'team': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
'position': ['G', 'G', 'G', 'F', 'G', 'G', 'F', 'F'],
'points': [5, 5, 8, 10, 5, 7, 10, 10]})
#view DataFrame
print(df)
team position points
0 A G 5
1 A G 5
2 A G 8
3 A F 10
4 B G 5
5 B G 7
6 B F 10
7 B F 10
Пример 1. Подсчет повторяющихся значений в одном столбце
В следующем коде показано, как подсчитать количество повторяющихся значений в столбце точек :
#count duplicate values in points column
len(df['points'])- len(df['points']. drop_duplicates ())
4
Мы видим, что в столбце точек есть 4 повторяющихся значения.
Пример 2: подсчет повторяющихся строк
Следующий код показывает, как подсчитать количество повторяющихся строк в DataFrame:
#count number of duplicate rows
len(df)- len(df.drop_duplicates ())
2
Мы видим, что в DataFrame есть 2 повторяющиеся строки.
Мы можем использовать следующий синтаксис для просмотра этих двух повторяющихся строк:
#display duplicated rows
df[df.duplicated ()]
team position points
1 A G 5
7 B F 10
Пример 3. Подсчет дубликатов для каждой уникальной строки
В следующем коде показано, как подсчитать количество дубликатов для каждой уникальной строки в DataFrame:
#display number of duplicates for each unique row
df.groupby (df.columns.tolist (), as_index= False ). size ()
team position points size
0 A F 10 1
1 A G 5 2
2 A G 8 1
3 B F 10 2
4 B G 5 1
5 B G 7 1
В столбце размера отображается количество дубликатов для каждой уникальной строки.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции в pandas:
Как удалить повторяющиеся строки в Pandas
Как удалить повторяющиеся столбцы в Pandas
Как выбрать столбцы по индексу в Pandas