Panda: come creare una tabella pivot con numero di valori
Puoi utilizzare uno dei seguenti metodi per creare una tabella pivot in panda che visualizzi il numero di valori in determinate colonne:
Metodo 1: tabella pivot con numeri
p.d. pivot_table (df, values=' col1 ', index=' col2 ', columns=' col3 ', aggfunc=' count ')
Metodo 2: tabella pivot con numeri univoci
p.d. pivot_table (df, values=' col1 ', index=' col2 ', columns=' col3 ', aggfunc=pd. Series . nunique )
Gli esempi seguenti mostrano come utilizzare ciascun metodo con i seguenti DataFrame panda:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], ' position ': ['G', 'G', 'F', 'C', 'G', 'F', 'F', 'F'], ' points ': [4, 4, 6, 8, 9, 5, 5, 12]}) #view DataFrame df team position points 0 A G 4 1 A G 4 2 A F 6 3 A C 8 4 B G 9 5 B F 5 6 B F 5 7 B F 12
Metodo 1: creare una tabella pivot Pandas con conteggi
Il codice seguente mostra come creare una tabella pivot in panda che visualizzi il numero totale di valori “punto” per ogni “squadra” e “posizione” nel DataFrame:
#create pivot table
df_pivot = pd. pivot_table (df, values=' points ', index=' team ', columns=' position ',
aggfunc=' count ')
#view pivot table
df_pivot
position C F G
team
A 1.0 1.0 2.0
B NaN 3.0 1.0
Dal risultato possiamo vedere:
- C’è 1 valore nella colonna “punti” per la squadra A nella posizione C.
- C’è 1 valore nella colonna “punti” per la squadra A nella posizione F.
- Ci sono 2 valori nella colonna “punti” per la squadra A in posizione G.
E così via.
Metodo 2: creare una tabella pivot Pandas con conteggi univoci
Il codice seguente mostra come creare una tabella pivot in panda che visualizzi il numero totale univoco di valori “punto” per ogni “squadra” e “posizione” nel DataFrame:
#create pivot table
df_pivot = pd. pivot_table (df, values=' points ', index=' team ', columns=' position ',
aggfunc=pd. Series . nunique )
#view pivot table
df_pivot
position C F G
team
A 1.0 1.0 1.0
B NaN 2.0 1.0
Dal risultato possiamo vedere:
- C’è 1 valore univoco nella colonna “punti” per la squadra A nella posizione C.
- C’è 1 valore univoco nella colonna “punti” per la squadra A nella posizione F.
- C’è 1 valore univoco nella colonna “punti” per la squadra A nella posizione G.
E così via.
Nota : puoi trovare la documentazione completa della funzione panda pivot_table() qui .
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:
Panda: come rimodellare il DataFrame da lungo a largo
Panda: come rimodellare il DataFrame da largo a lungo
Panda: come raggruppare e aggregare su più colonne