Pandas: как использовать groupby и plot (с примерами)


Вы можете использовать следующие методы для группировки и построения графиков с помощью DataFrame pandas:

Способ 1. Сгруппируйте и нарисуйте несколько линий по одному пути.

 #define index column
df. set_index ('day', inplace= True )

#group data by product and display sales as line chart
df. groupby (' product ')[' sales ']. plot (legend= True )

Метод 2. Группируйте и рисуйте линии на отдельных участках.

 p.d. pivot_table ( df.reset_index (),
               index=' day ', columns=' product ', values=' sales '
              ). plot (subplots= True )

В следующем примере показано, как использовать каждый метод на практике со следующим DataFrame pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' day ': [1, 2, 3, 4, 5, 1, 2, 3, 4, 5],
                   ' product ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'],
                   ' sales ': [4, 7, 8, 12, 15, 8, 11, 14, 19, 20]})

#view DataFrame
df

	day product sales
0 1 A 4
1 2 To 7
2 3 To 8
3 4 A 12
4 5 To 15
5 1 B 8
6 2 B 11
7 3 B 14
8 4 B 19
9 5 B 20

Способ 1. Сгруппируйте и нарисуйте несколько линий по одному пути.

Следующий код показывает, как сгруппировать DataFrame по переменной «продукт» и отобразить «продажи» каждого продукта на диаграмме:

 #define index column
df. set_index (' day ', inplace= True )

#group data by product and display sales as line chart
df. groupby (' product ')[' sales ']. plot (legend= True ) 

группировка и интрига панд

По оси X показан день, по оси Y показаны продажи, а в каждой отдельной строке показаны продажи отдельных продуктов.

Метод 2. Группируйте и рисуйте линии на отдельных участках.

Следующий код показывает, как сгруппировать DataFrame по переменной «продукт» и построить график «продаж» каждого продукта на отдельных подграфиках:

 p.d. pivot_table ( df.reset_index (),
               index=' day ', columns=' product ', values=' sales '
              ). plot (subplots= True ) 

панды сгруппированы и отображены на подсюжетах

На первом графике показаны продажи продукта А, а на втором графике показаны продажи продукта Б.

Обратите внимание, что мы также можем использовать аргумент макета , чтобы указать расположение подтрасс.

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

 p.d. pivot_table ( df.reset_index (),
               index=' day ', columns=' product ', values=' sales '
              ). plot (subplots= True , layout=(1,2)) 

Дополнительные ресурсы

В следующих руководствах объясняется, как создавать другие распространенные визуализации в pandas:

Как создать коробчатую диаграмму из Pandas DataFrame
Как создать круговую диаграмму из Pandas DataFrame
Как создать гистограмму из Pandas DataFrame

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *