Spec-Zone.ru › pandas 2

pandas.core.groupby.DataFrameGroupBy.value_counts

DataFrameGroupBy.value_counts(subset=None, normalize=False, sort=True, ascending=False, dropna=True)[source]

Возвращает Series или DataFrame, содержащие подсчеты уникальных строк.

Добавлена в версии 1.4.0.

Параметры:
subset:последовательность, необязательно

Столбцы, используемые при подсчете уникальных комбинаций.

normalize:bool, по умолчанию False

Возвращает пропорции вместо частот.

sort:bool, по умолчанию True

Сортировать по частотам.

ascending:bool, по умолчанию False

Сортировать в порядке возрастания.

dropna:bool, по умолчанию True

Не включать подсчеты строк, содержащих значения NA.

Возвращает:
Series или DataFrame

Series, если groupby as_index равен True, в противном случае DataFrame.

См. также

Series.value_counts

Эквивалентный метод для Series.

DataFrame.value_counts

Эквивалентный метод для DataFrame.

SeriesGroupBy.value_counts

Эквивалентный метод для SeriesGroupBy.

Примечания

  • Если groupby as_index равен True, возвращаемая Series будет иметь MultiIndex с одним уровнем на каждый входной столбец.

  • Если groupby as_index равен False, возвращаемый DataFrame будет иметь дополнительный столбец с value_counts. Столбец имеет имя ‘count’ или ‘proportion’, в зависимости от параметра normalize.

По умолчанию строки, содержащие значения NA, исключаются из результата.

По умолчанию результат будет в порядке убывания, так что первый элемент каждой группы — это наиболее часто встречающаяся строка.

Примеры

>>> df = pd.DataFrame({
...     'gender': ['male', 'male', 'female', 'male', 'female', 'male'],
...     'education': ['low', 'medium', 'high', 'low', 'high', 'low'],
...     'country': ['US', 'FR', 'US', 'FR', 'FR', 'FR']
... })
>>> df
        gender  education   country
0       male    low         US
1       male    medium      FR
2       female  high        US
3       male    low         FR
4       female  high        FR
5       male    low         FR
>>> df.groupby('gender').value_counts()
gender  education  country
female  high       FR         1
                   US         1
male    low        FR         2
                   US         1
        medium     FR         1
Name: count, dtype: int64
>>> df.groupby('gender').value_counts(ascending=True)
gender  education  country
female  high       FR         1
                   US         1
male    low        US         1
        medium     FR         1
        low        FR         2
Name: count, dtype: int64
>>> df.groupby('gender').value_counts(normalize=True)
gender  education  country
female  high       FR         0.50
                   US         0.50
male    low        FR         0.50
                   US         0.25
        medium     FR         0.25
Name: proportion, dtype: float64
>>> df.groupby('gender', as_index=False).value_counts()
   gender education country  count
0  female      high      FR      1
1  female      high      US      1
2    male       low      FR      2
3    male       low      US      1
4    male    medium      FR      1
>>> df.groupby('gender', as_index=False).value_counts(normalize=True)
   gender education country  proportion
0  female      high      FR        0.50
1  female      high      US        0.50
2    male       low      FR        0.50
3    male       low      US        0.25
4    male    medium      FR        0.25

© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.2.2/reference/api/pandas.core.groupby.DataFrameGroupBy.value_counts.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API