Pandas: come usare groupby e plot (con esempi)
È possibile utilizzare i seguenti metodi per raggruppare e tracciare con un DataFrame panda:
Metodo 1: raggruppa e disegna più linee in un unico percorso
#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 )
Metodo 2: Raggruppare e tracciare linee in singole sottotrame
p.d. pivot_table ( df.reset_index (), index=' day ', columns=' product ', values=' sales ' ). plot (subplots= True )
L’esempio seguente mostra come utilizzare ciascun metodo nella pratica con i seguenti DataFrame panda:
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
Metodo 1: raggruppa e disegna più linee in un unico percorso
Il codice seguente mostra come raggruppare DataFrame in base alla variabile “prodotto” e tracciare le “vendite” di ciascun prodotto in un grafico:
#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 )
L’asse x mostra il giorno, l’asse y mostra le vendite e ogni singola riga mostra le vendite dei singoli prodotti.
Metodo 2: Raggruppare e tracciare linee in singole sottotrame
Il codice seguente mostra come raggruppare DataFrame in base alla variabile “prodotto” e tracciare le “vendite” di ciascun prodotto in singole sottotrame:
p.d. pivot_table ( df.reset_index (), index=' day ', columns=' product ', values=' sales ' ). plot (subplots= True )
Il primo grafico mostra le vendite del prodotto A e il secondo grafico mostra le vendite del prodotto B.
Nota che possiamo anche usare l’argomento layout per specificare il layout delle sottotracce.
Ad esempio, potremmo specificare che le sottotrame siano in una griglia con una riga e due colonne:
p.d. pivot_table ( df.reset_index (), index=' day ', columns=' product ', values=' sales ' ). plot (subplots= True , layout=(1,2))
Risorse addizionali
I seguenti tutorial spiegano come creare altre visualizzazioni comuni nei panda:
Come creare un boxplot da Pandas DataFrame
Come creare un grafico a torta da Pandas DataFrame
Come creare un istogramma da Pandas DataFrame