Автор оригинала: Pankaj Kumar.
Эй, ребята! В этой статье мы будем понимать функцию Pandas groupby () вместе с различными функциями, которые она выполняет.
Что такое функция groupby ()?
Модуль Python Pandas широко используется для лучшей предварительной обработки данных и используется для визуализации данных.
Модуль Pandas имеет различные встроенные функции для более эффективной работы с данными. Функция dataframe.groupby() модуля Pandas используется для разделения и выделения некоторой части данных из целого набора данных на основе определенных предопределенных условий или параметров.
Синтаксис:
dataframe.groupby('column-name')
Используя приведенный выше синтаксис, мы можем разделить набор данных и выбрать все данные, принадлежащие переданному столбцу, в качестве аргумента функции.
Входной набор данных:
Пример:
import pandas data = pandas.read_csv("C:/marketing_tr.csv") data_grp = data.groupby('marital') data_grp.first()
В приведенном выше примере мы использовали функцию groupby() для разделения и раздельного создания нового фрейма данных со всеми данными, принадлежащими столбцу “семейное положение”, соответственно.
Выход:
Функция Pandas groupby() с несколькими столбцами
Разделение данных по значениям нескольких столбцов можно выполнить с помощью функции Pandas dataframe.groupby ()
. Таким образом, мы можем передать несколько тегов столбцов в качестве аргументов для разделения и сегрегации значений данных вместе только с этими значениями столбцов.
Синтаксис:
dataframe.groupby(['column1', 'column2', ...., 'columnN'])
Пример:
import pandas data = pandas.read_csv("C:/marketing_tr.csv")4 data_grp = data.groupby(['marital','schooling']) data_grp.first()
Выход:
Функция Pandas groupby() для просмотра групп
Помимо разделения данных в соответствии с определенным значением столбца, мы даже можем просмотреть сведения о каждой группе, сформированной из категорий столбца, с помощью функции dataframe.groupby().groups
.
Вот снимок образца набора данных, используемого в этом примере:
Синтаксис:
dataframe.groupby('column').groups
Пример:
import pandas data = pandas.read_csv("C:/marketing_tr.csv") data_grp = data.groupby('marital').groups data_grp
Как было показано выше, мы разделили данные и сформировали новый фрейм данных значений из столбца – “брачный”.
Кроме того, мы использовали функцию group by().groups для отображения всех категорий значений, присутствующих в этом конкретном столбце.
Кроме того, он также представляет положение этих категорий в исходном наборе данных, а также тип данных и количество присутствующих значений.
Выход:
{'divorced': Int64Index([ 3, 4, 33, 34, 63, 66, 73, 77, 98, 112, ... 7284, 7298, 7300, 7326, 7349, 7362, 7365, 7375, 7391, 7412], dtype='int64', length=843), 'married': Int64Index([ 1, 2, 5, 7, 8, 9, 10, 11, 13, 14, ... 7399, 7400, 7403, 7404, 7405, 7406, 7407, 7408, 7410, 7413], dtype='int64', length=4445), 'single': Int64Index([ 0, 6, 12, 16, 18, 19, 24, 29, 31, 32, ... 7383, 7385, 7386, 7390, 7397, 7398, 7401, 7402, 7409, 7411], dtype='int64', length=2118), 'unknown': Int64Index([2607, 4770, 4975, 5525, 5599, 5613, 6754, 7221], dtype='int64')}
Выбор группы с помощью функции Pandas groupby()
Как видно до сих пор, мы можем просматривать различные категории обзора уникальных значений, присутствующих в столбце, с его подробностями.
Используя data frame.get_group('column-value')
,мы можем отобразить значения, принадлежащие определенной категории/значению данных столбца, сгруппированного функцией groupby ().
Синтаксис:
dataframe.get_group('column-value')
Пример:
import pandas data = pandas.read_csv("C:/marketing_tr.csv") data_grp = data.groupby('marital') df = data_grp.get_group('divorced') df.head()
В приведенном выше примере мы отобразили данные, относящиеся к значению столбца “разведен” столбца “женат”.
Выход:
Вывод
Таким образом, в этой статье мы подробно разобрались в работе функции Pandas groupby ().