Как перечислить значения для каждой группы Pandas?
В этой статье мы увидим, как мы можем отобразить все значения каждой группы, на которую разделен фрейм данных. Фрейм данных сначала делится на группы с помощью метода DataFrame.groupby () . Затем мы модифицируем его так, чтобы каждая группа содержала значения в списке.
First, Let’s create a Dataframe:
Python3
# import pandas libraryimport pandas as pd # create a dataframedf = pd.DataFrame({"a": ["A", "A", "B", "B", "B", "C", "C", "D"], "b": [1, 2, 5, 3, 5, 4, 8, 6]})# show the dataframe df |
Выход:

Method 1: Using DataFrame.groupby() and Series.apply() together.
Example: We’ll create lists of all values of each group and store it in new column called “listvalues”.
Python3
# import pandas libraryimport pandas as pd # create a dataframedf = pd.DataFrame({"a": ["A", "A", "B", "B", "B", "C", "C", "D"], "b": [1, 2, 5, 3, 5, 4, 8, 6]}) # convert values of each group# into a listgroups = df.groupby("a")["b"].apply(list) print(groups) # groups store in a new # column called listvaluesdf1 = groups.reset_index(name = "listvalues")# show the dataframedf1 |
Выход:

Метод 2: Использование DataFrame.groupby () и Series.agg () .
Example: We use thelambda function inside the Series.agg() to convert the all values of a group to a list.
Python3
# import pandas libraryimport pandas as pd # create a dataframedf = pd.DataFrame( {"a": ["A", "A", "B", "B", "B", "C", "C", "D"], "b": [1, 2, 5, 3, 5, 4, 8, 6]} )# convert values of each group# into a listgroups = df.groupby("a").agg(lambda x: list(x)) print(groups) |
Выход:

Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.
Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.