pandas.DataFrame.groupby
-
DataFrame.groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, observed=False, **kwargs)[source] -
Группировка DataFrame или Series с помощью отображения или по Series столбцов.
Операция группировки включает в себя некоторое сочетание разделения объекта, применения функции и объединения результатов. Это можно использовать для группировки больших объёмов данных и вычисления операций над этими группами.
Параметры: -
by : mapping, function, label, or list of labels -
Используется для определения групп для группировки. Если
byявляется функцией, она вызывается для каждого значения индекса объекта. Если передаётся словарь или Series, значения Series или словаря будут использованы для определения групп (значения Series сначала выравниваются; см. метод.align()). Если передаётся массив ndarray, значения используются непосредственно для определения групп. Для группировки по столбцам вselfможно передать метку или список меток. Обратите внимание, что кортеж интерпретируется как (единственный) ключ. -
axis : {0 or ‘index’, 1 or ‘columns’}, default 0 -
Разделение по строкам (0) или столбцам (1).
-
level : int, level name, or sequence of such, default None -
Если ось является MultiIndex (многоуровневым), группировка выполняется по определённому уровню или уровням.
-
as_index : bool, default True -
Для агрегированного результата возвращается объект с метками групп в качестве индекса. Актуально только для входных данных DataFrame. as_index=False фактически соответствует группировке в стиле SQL.
-
sort : bool, default True -
Сортировать ключи групп. Для повышения производительности выключите это. Обратите внимание, что это не влияет на порядок наблюдений в каждой группе. Groupby сохраняет порядок строк в каждой группе.
-
group_keys : bool, default True -
При вызове apply добавить ключи групп в индекс, чтобы идентифицировать части.
-
squeeze : bool, default False -
Свести размерность типа возвращаемого значения, если это возможно, в противном случае вернуть согласованный тип.
-
observed : bool, default False -
Это применимо только в том случае, если какие-либо из группирующих элементов являются Categorical. Если True: показывать только наблюдаемые значения для категориальных группирующих элементов. Если False: показывать все значения для категориальных группирующих элементов.
Новое в версии 0.23.0.
- **kwargs
-
Необязательно, принимает только ключевой аргумент ‘mutated’ и передаётся в groupby.
Возвращаемое значение: - DataFrameGroupBy или SeriesGroupBy
-
Зависит от вызываемого объекта и возвращает объект группировки, содержащий информацию о группах.
См. также
-
resample - Удобный метод для преобразования частоты и ресемплирования временных рядов.
Примечания
См. руководство пользователя для получения дополнительной информации.
Примеры
>>> df = pd.DataFrame({'Animal' : ['Falcon', 'Falcon', ... 'Parrot', 'Parrot'], ... 'Max Speed' : [380., 370., 24., 26.]}) >>> df Animal Max Speed 0 Falcon 380.0 1 Falcon 370.0 2 Parrot 24.0 3 Parrot 26.0 >>> df.groupby(['Animal']).mean() Max Speed Animal Falcon 375.0 Parrot 25.0Иерархические индексы
Мы можем группировать по разным уровням иерархического индекса, используя параметр
level.>>> arrays = [['Falcon', 'Falcon', 'Parrot', 'Parrot'], ... ['Capitve', 'Wild', 'Capitve', 'Wild']] >>> index = pd.MultiIndex.from_arrays(arrays, names=('Animal', 'Type')) >>> df = pd.DataFrame({'Max Speed' : [390., 350., 30., 20.]}, ... index=index) >>> df Max Speed Animal Type Falcon Capitve 390.0 Wild 350.0 Parrot Capitve 30.0 Wild 20.0 >>> df.groupby(level=0).mean() Max Speed Animal Falcon 370.0 Parrot 25.0 >>> df.groupby(level=1).mean() Max Speed Type Capitve 210.0 Wild 185.0 -
© 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.24.2/reference/api/pandas.DataFrame.groupby.html