Panda: come rappresentare value_counts in percentuale


Puoi utilizzare la funzione value_counts() nei panda per contare le occorrenze di valori in una determinata colonna di un DataFrame.

Per rappresentare i valori come percentuali, è possibile utilizzare uno dei seguenti metodi:

Metodo 1: rappresentare i valori come percentuali (formattati come decimali)

 df. my_col . value_counts (normalize= True )

Metodo 2: rappresentare i valori come percentuali (formattati con simboli percentuali)

 df. my_col . value_counts (normalize= True ). mul ( 100 ). round ( 1 ). astype (str) + ' % '

Metodo 3: rappresentare i conteggi dei valori come percentuali (con conteggi)

 counts = df. my_col . value_counts ()
percs = df. my_col . value_counts (normalize= True )
p.d. concat ([counts, percs], axis= 1 , keys=[' count ', ' percentage '])

I seguenti esempi mostrano come utilizzare ciascun metodo nella pratica con i seguenti DataFrame panda:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'B', 'B', 'C'],
                   ' points ': [15, 12, 18, 20, 22, 28, 35, 40]})

#view DataFrame
print (df)

  team points
0 to 15
1 to 12
2 B 18
3 B 20
4 B 22
5 B 28
6 B 35
7 C 40

Esempio 1: rappresentare i valori come percentuali (formattati come decimali)

Il codice seguente mostra come contare le occorrenze di ciascun valore nella colonna della squadra e rappresentare le occorrenze come percentuale del totale, in formato decimale:

 #count occurrence of each value in 'team' column as percentage of total
df. team . value_counts (normalize= True )

B 0.625
At 0.250
C 0.125
Name: team, dtype: float64

Dal risultato possiamo vedere:

  • Il valore B rappresenta il 62,5% delle occorrenze nella colonna squadra.
  • Il valore A rappresenta il 25% delle occorrenze nella colonna della squadra.
  • Il valore C rappresenta il 12,5% delle occorrenze nella colonna squadra.

Tieni presente che le percentuali sono formattate come decimali.

Esempio 2: rappresentare i valori come percentuali (formattati con simboli percentuali)

Il codice seguente mostra come contare le occorrenze di ciascun valore nella colonna della squadra e rappresentare le occorrenze come percentuale del totale, formattato con simboli percentuali:

 #count occurrence of each value in 'team' column as percentage of total
df. team . value_counts (normalize= True ). mul ( 100 ). round ( 1 ). astype (str) + ' % '

B 62.5%
At 25.0%
C 12.5%
Name: team, dtype: object

Tieni presente che le percentuali sono formattate come stringhe con simboli di percentuale.

Esempio 3: rappresentazione di numeri di valori come percentuali (con numeri)

Il codice seguente mostra come contare le occorrenze di ciascun valore nella colonna del team e rappresentare le occorrenze come numeri e percentuali:

 #count occurrence of each value in 'team' column
counts = df. team . value_counts ()

#count occurrence of each value in 'team' column as percentage of total
percs = df. team . value_counts (normalize= True )

#concatenate results into one DataFrame
p.d. concat ([counts, percs], axis= 1 , keys=[' count ', ' percentage '])

        count percentage
B 5 0.625
At 2 0.250
C 1 0.125

Tieni presente che la colonna conteggio visualizza il conteggio di ciascun valore univoco nella colonna della squadra mentre la colonna percentuale visualizza ciascun valore univoco come percentuale del numero totale di occorrenze.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni nei panda:

Panda: come tracciare i conti di valore
Panda: come utilizzare GroupBy e conteggi dei valori
Panda: come tracciare gli istogrammi per gruppo

Aggiungi un commento

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