Come utilizzare la funzione value_counts() di panda (con esempi)


Puoi utilizzare la funzione value_counts() per contare la frequenza di valori univoci in una serie di panda.

Questa funzione utilizza la seguente sintassi di base:

 my_series. value_counts ()

Gli esempi seguenti mostrano come utilizzare questa sintassi nella pratica.

Esempio 1: frequenza di conteggio di valori univoci

Il codice seguente mostra come contare le occorrenze di valori univoci in una serie panda:

 import pandas as pd

#create pandas Series
my_series = pd. Series ([3, 3, 3, 3, 4, 4, 7, 7, 8, 9])

#count occurrences of unique values in Series
my_series. value_counts ()

3 4
4 2
7 2
8 1
9 1
dtype: int64

Questo ci dice:

  • Il valore 3 appare 4 volte.
  • Il valore 4 appare due volte .
  • Il valore 7 appare due volte .

E così via.

Esempio 2: frequenza di conteggio di valori univoci (incluso NaN)

Per impostazione predefinita, la funzione value_counts() non visualizza la frequenza dei valori NaN.

Tuttavia, puoi utilizzare l’argomento dropna per visualizzare la frequenza dei valori NaN:

 import pandas as pd
import numpy as np

#create pandas Series with some NaN values
my_series = pd. Series ([3, 3, 3, 3, 4, 4, 7, 7, 8, 9, np.nan, np.nan])

#count occurrences of unique values in Series, including NaNs
my_series. value_counts (dropna= False )

3.0 4
4.0 2
7.0 2
NaN2
8.0 1
9.0 1
dtype: int64

Esempio 3: contare la frequenza relativa di valori univoci

Il codice seguente mostra come utilizzare l’argomento normalize per contare la frequenza relativa di valori univoci in una serie di panda:

 import pandas as pd

#create pandas Series
my_series = pd. Series ([3, 3, 3, 3, 4, 4, 7, 7, 8, 9])

#count occurrences of unique values in Series
my_series. value_counts (normalize= True )

3 0.4
4 0.2
7 0.2
8 0.1
9 0.1
dtype:float64

Questo ci dice:

  • Il valore 3 rappresenta il 40% di tutti i valori della serie.
  • Il valore 4 rappresenta il 20% di tutti i valori della serie.
  • Il valore 7 rappresenta il 20% di tutti i valori della serie.

E così via.

Esempio 4: Frequenza di conteggio nei contenitori

Il codice seguente mostra come utilizzare l’argomento bins per contare la frequenza dei valori in una serie di panda che rientrano in bin di uguale dimensione:

 import pandas as pd

#create pandas Series
my_series = pd. Series ([3, 3, 3, 3, 4, 4, 7, 7, 8, 9])

#count occurrences of unique values in Series
my_series. value_counts (bins= 3 )

(3.0, 5.0] 6
(5.0, 7.0] 2
(7.0, 9.0] 2
dtype: int64

Questo ci dice:

  • Ci sono 6 valori tra 3 e 5.
  • Ci sono 2 valori tra 5 e 7.
  • Ci sono 2 valori tra 7 e 9.

Esempio 5: conta la frequenza dei valori in Pandas DataFrame

Possiamo anche utilizzare la funzione value_counts() per calcolare la frequenza di valori univoci in una colonna specifica di un DataFrame panda:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [9, 9, 9, 10, 10, 13, 15, 22],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})
#count occurrences of unique values in 'points' column
df[' points ']. value_counts ()

9 3
10 2
13 1
15 1
22 1
Name: points, dtype: int64

Risorse addizionali

I seguenti tutorial spiegano come utilizzare altre funzioni comuni nei panda:

Come utilizzare la funzione description() in Panda
Come contare il numero di righe in Pandas
Come contare gli avvistamenti di gruppo nei panda

Aggiungi un commento

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