Метод drop_duplicates
Метод drop_duplicates применяется к Series
и возвращает новую серию с удаленными повторяющимися значениями.
Первым параметром keep можно указать, какое из дублирующихся
значений оставить: 'first' (первое), 'last' (последнее)
или False (удалить все дубликаты). Вторым параметром
inplace можно указать, изменять ли исходную серию.
Синтаксис
ser.drop_duplicates(keep='first', inplace=False)
Пример
Давайте удалим дубликаты из серии, оставляя первое вхождение:
import pandas as pd
ser = pd.Series([1, 2, 2, 3, 3, 3, 4])
res = ser.drop_duplicates()
print(res)
Результат выполнения кода:
0 1
1 2
3 3
6 4
dtype: int64
Пример
Давайте удалим дубликаты, оставляя последнее вхождение:
import pandas as pd
ser = pd.Series([1, 2, 2, 3, 3, 3, 4])
res = ser.drop_duplicates(keep='last')
print(res)
Результат выполнения кода:
0 1
2 2
5 3
6 4
dtype: int64
Пример
Давайте удалим все дубликаты, оставляя только уникальные значения:
import pandas as pd
ser = pd.Series([1, 2, 2, 3, 3, 3, 4])
res = ser.drop_duplicates(keep=False)
print(res)
Результат выполнения кода:
0 1
6 4
dtype: int64
Пример
Давайте удалим дубликаты с изменением исходной серии:
import pandas as pd
ser = pd.Series(['a', 'b', 'b', 'c', 'c'])
ser.drop_duplicates(inplace=True)
print(ser)
Результат выполнения кода:
0 a
1 b
3 c
dtype: object
Пример
Давайте удалим дубликаты из серии со строковыми значениями:
import pandas as pd
ser = pd.Series(['apple', 'banana', 'apple', 'cherry', 'banana'])
res = ser.drop_duplicates()
print(res)
Результат выполнения кода:
0 apple
1 banana
3 cherry
dtype: object
Пример
Давайте удалим дубликаты с учетом NaN значений:
import pandas as pd
import numpy as np
ser = pd.Series([1, np.nan, 2, np.nan, 3])
res = ser.drop_duplicates()
print(res)
Результат выполнения кода:
0 1.0
1 NaN
2 2.0
4 3.0
dtype: float64
Смотрите также
-
метод
duplicated,
который определяет дублирующиеся значения -
метод
unique,
который возвращает уникальные значения -
метод
nunique,
который считает количество уникальных значений -
метод
value_counts,
который подсчитывает частоту значений