Panda: come utilizzare as_index in groupby
È possibile utilizzare l’argomento as_index in un’operazione pandas groupby() per specificare se si desidera o meno che la colonna raggruppata venga utilizzata come indice dell’output.
L’argomento as_index può essere True o False .
Il valore predefinito è Vero .
L’esempio seguente mostra come utilizzare nella pratica l’argomento as_index .
Esempio: come utilizzare as_index in panda groupby
Supponiamo di avere il seguente DataFrame panda che mostra il numero di punti segnati da giocatori di basket di diverse squadre:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'C', 'C', 'C'],
' points ': [12, 15, 17, 17, 19, 14, 15, 20, 24, 28]})
#view DataFrame
print (df)
team points
0 to 12
1 to 15
2 to 17
3 to 17
4 to 19
5 B 14
6 B 15
7 C 20
8 C 24
9 C 28
Possiamo utilizzare la seguente sintassi per raggruppare le righe per colonna della squadra e calcolare la somma della colonna dei punti , specificando as_index=True per utilizzare la squadra come indice di output:
#group rows by team and calculate sum of points
print ( df.groupby (' team ', as_index= True ) .sum ())
points
team
At 80
B29
C 72
L’output mostra la somma dei valori nella colonna dei punti , raggruppati in base ai valori nella colonna della squadra .
Tieni presente che la colonna del team viene utilizzata come indice dell’output.
Se invece specifichiamo as_index=False , la colonna del team non verrà utilizzata come indice di output:
#group rows by team and calculate sum of points
print ( df.groupby (' team ', as_index= False ) .sum ())
team points
0 to 80
1 B 29
2 C 72
Tieni presente che la squadra ora viene utilizzata come colonna nell’output e la colonna dell’indice è semplicemente numerata 0-2.
Nota : puoi trovare la documentazione completa dell’operazione panda groupby() qui .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:
Come ottenere un gruppo dopo aver utilizzato Pandas Groupby
Come convertire l’output di Pandas GroupBy in DataFrame
Come applicare una funzione a Pandas Groupby