Spec-Zone.ru › pandas 0.25

pandas.DataFrame.mode

DataFrame.mode(self, axis=0, numeric_only=False, dropna=True) [source]

Получение моды (или мод) каждого элемента по выбранной оси.

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

Параметры:
axis : {0 or ‘index’, 1 or ‘columns’}, default 0

Ось, по которой итерироваться для поиска моды:

  • 0 или ‘index’ : получить моду каждого столбца
  • 1 или ‘columns’ : получить моду каждой строки
numeric_only : bool, default False

Если True, применять только к числовым столбцам.

dropna : bool, default True

Не учитывать подсчет значений NaN/NaT.

Новое в версии 0.24.0.

Возвращает:
DataFrame

Моды каждого столбца или строки.

См. также

Series.mode
Возвращает значение с наибольшей частотой в Series.
Series.value_counts
Возвращает подсчет значений в Series.

Примеры

>>> df = pd.DataFrame([('bird', 2, 2),
...                    ('mammal', 4, np.nan),
...                    ('arthropod', 8, 0),
...                    ('bird', 2, np.nan)],
...                   index=('falcon', 'horse', 'spider', 'ostrich'),
...                   columns=('species', 'legs', 'wings'))
>>> df
           species  legs  wings
falcon        bird     2    2.0
horse       mammal     4    NaN
spider   arthropod     8    0.0
ostrich       bird     2    NaN

По умолчанию пропущенные значения не учитываются, и мода для крыльев — это 0 и 2. Вторая строка для видов и ног содержит NaN, так как у них есть только одна мода, но DataFrame имеет две строки.

>>> df.mode()
  species  legs  wings
0    bird   2.0    0.0
1     NaN   NaN    2.0

Установив dropna=False NaN учитываются и они могут быть модой (как для крыльев).

>>> df.mode(dropna=False)
  species  legs  wings
0    bird     2    NaN

Установив numeric_only=True, вычисляется только мода числовых столбцов, и столбцы других типов игнорируются.

>>> df.mode(numeric_only=True)
   legs  wings
0   2.0    0.0
1   NaN    2.0

Для вычисления моды по столбцам, а не строкам, используйте параметр axis:

>>> df.mode(axis='columns', numeric_only=True)
           0    1
falcon   2.0  NaN
horse    4.0  NaN
spider   0.0  8.0
ostrich  2.0  NaN

© 2008–2012, 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/0.25.0/reference/api/pandas.DataFrame.mode.html

Spec-Zone.ru

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