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

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *