Метод duplicated
Метод duplicated применяется к Series
и возвращает булеву маску, где True означает,
что значение является дубликатом. По умолчанию все
повторяющиеся значения, кроме первого вхождения,
отмечаются как дубликаты.
Синтаксис
ser.duplicated([keep])
Параметр keep определяет, какие вхождения
считать дубликатами:
-
'first'- помечать как дубликаты все повторяющиеся значения, кроме первого вхождения (значение по умолчанию) -
'last'- помечать как дубликаты все повторяющиеся значения, кроме последнего вхождения -
False- помечать как дубликаты все повторяющиеся значения без исключений
Пример
Давайте найдём дубликаты в серии с помощью метода duplicated
со стандартным параметром keep='first':
import pandas as pd
ser = pd.Series([1, 2, 3, 2, 4, 1, 5])
res = ser.duplicated()
print(res)
Результат выполнения кода:
0 False
1 False
2 False
3 True
4 False
5 True
6 False
dtype: bool
Пример
Используем параметр keep='last', чтобы пометить
как дубликаты все повторяющиеся значения, кроме последнего
вхождения:
import pandas as pd
ser = pd.Series([1, 2, 3, 2, 4, 1, 5])
res = ser.duplicated(keep='last')
print(res)
Результат выполнения кода:
0 True
1 True
2 False
3 False
4 False
5 False
6 False
dtype: bool
Пример
Установим параметр keep=False, чтобы пометить
как дубликаты все повторяющиеся значения без исключений:
import pandas as pd
ser = pd.Series([1, 2, 3, 2, 4, 1, 5])
res = ser.duplicated(keep=False)
print(res)
Результат выполнения кода:
0 True
1 True
2 False
3 True
4 False
5 True
6 False
dtype: bool
Пример
Булеву маску, возвращаемую методом duplicated,
можно использовать для фильтрации дублирующихся элементов
из серии:
import pandas as pd
ser = pd.Series([1, 2, 3, 2, 4, 1, 5])
res = ser[~ser.duplicated()]
print(res)
Результат выполнения кода:
0 1
1 2
2 3
4 4
6 5
dtype: int64
Обратите внимание, что в результате остались только уникальные значения, при этом сохранён порядок первого вхождения каждого уникального значения.
Смотрите также
-
метод
drop_duplicates,
который удаляет дублирующиеся строки -
метод
unique,
который возвращает массив уникальных значений -
метод
nunique,
который возвращает количество уникальных значений -
метод
value_counts,
который считает частоту значений