Метод nunique
Метод nunique применяется к DataFrame
и возвращает количество уникальных значений в каждом
столбце таблицы. По умолчанию метод подсчитывает
количество уникальных значений, исключая пропуски
NaN. Параметр axis определяет направление
подсчёта: по умолчанию (axis=0) подсчёт
выполняется по строкам для каждого столбца.
Параметр dropna определяет, учитывать ли
пропуски в подсчёте: если значение True,
то NaN исключаются из подсчёта (это поведение
по умолчанию), если False, то пропуски также
учитываются как отдельное уникальное значение.
Синтаксис
df.nunique([axis, dropna])
Пример
Давайте создадим таблицу с различными значениями и подсчитаем количество уникальных значений в каждом столбце:
import pandas as pd
import numpy as np
df = pd.DataFrame({
'a': [1, 2, 2, 3, 3, 3],
'b': ['x', 'y', 'y', 'z', 'z', 'z'],
'c': [10, 20, 20, 30, np.nan, 30]
})
print(df.nunique())
Результат выполнения кода:
a 3
b 3
c 3
dtype: int64
Пример
Давайте явно укажем, что пропуски следует
учитывать как отдельные уникальные значения.
В этом случае столбец 'c' будет иметь
4 уникальных значения, включая NaN:
import pandas as pd
import numpy as np
df = pd.DataFrame({
'a': [1, 2, 2, 3, 3, 3],
'b': ['x', 'y', 'y', 'z', 'z', 'z'],
'c': [10, 20, 20, 30, np.nan, 30]
})
print(df.nunique(dropna=False))
Результат выполнения кода:
a 3
b 3
c 4
dtype: int64
Пример
Метод nunique может также подсчитывать
уникальные значения по строкам. Для этого
нужно задать параметр axis=1.
Рассмотрим пример:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 2, 3],
'b': [1, 3, 2, 4],
'c': [1, 2, 3, 4]
})
print(df.nunique(axis=1))
Результат выполнения кода:
0 1
1 3
2 2
3 3
dtype: int64
В этом примере для первой строки все три значения одинаковы (1, 1, 1), поэтому результат - 1. Для второй строки значения (2, 3, 2) - два уникальных значения. Для третьей и четвёртой строк - три уникальных значения.
Смотрите также
-
метод
count,
который возвращает количество непустых значений -
метод
value_counts,
который считает частоту значений -
метод
drop_duplicates,
который удаляет дубликаты -
метод
duplicated,
который определяет дублирующиеся строки