pandas.DataFrame.groupby
-
DataFrame.groupby(self, by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, observed=False, **kwargs)[source] -
Группировка DataFrame или 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 -
Сортировка ключей групп. Для повышения производительности можно отключить эту опцию. Обратите внимание, что это не влияет на порядок наблюдений внутри каждой группы. Группировка сохраняет порядок строк внутри каждой группы.
-
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'], ... ['Captive', 'Wild', 'Captive', '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 Captive 390.0 Wild 350.0 Parrot Captive 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 Captive 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.25.0/reference/api/pandas.DataFrame.groupby.html