Funzione Pandas Series.value_counts()
-
Sintassi di
pandas.Series.value_counts(): -
Codici di esempio: conteggio delle occorrenze di elementi univoci nella serie Pandas utilizzando il metodo
Series.value_counts() -
Codici di esempio: imposta
normalize=Truenel metodoSeries.value_counts()per ottenere le frequenze relative degli elementi -
Codici di esempio: imposta
ascending=Truenel metodoSeries.value_counts()per ordinare gli elementi in base al valore della frequenza in ordine crescente -
Codici di esempio: imposta il parametro
binsnel metodoSeries.value_counts()per ottenere il conteggio dei valori che si trovano in contenitori semiaperti -
Codici di esempio: imposta
dropna=Falsenel metodoSeries.value_counts()per contareNaN
Il metodo pandas.Series.value_counts() conta il numero di occorrenze di ogni elemento univoco nella Series.
Sintassi di pandas.Series.value_counts():
Series.value_counts(normalize=False, sort=True, ascending=False, bins=None, dropna=True)
Parametri
normalize |
Booleano. Frequenze relative dei valori univoci (normalize=True) o frequenze assolute dei valori univoci (normalize=False). |
sort |
Booleano. Ordina gli elementi in base alle frequenze (sort=True) o lascia l’oggetto Series non ordinato (sort=False) |
ascending |
Booleano. Ordina i valori in ordine crescente (ascending=True) o decrescente (ascending=False) |
bins |
Numero intero. Numero di partizioni in cui è suddiviso l’intervallo di valori dell’oggetto Series |
dropna |
Booleano. Includi conteggi di NaN (dropna=False) o escludi conteggi di NaN (dropna=True) |
Ritorno
Restituisce un oggetto Series composto dal conteggio di valori univoci.
Codici di esempio: conteggio delle occorrenze di elementi univoci nella serie Pandas utilizzando il metodo Series.value_counts()
import pandas as pd
import numpy as np
df = pd.DataFrame({'X': [1, 2, 3, np.nan, 3],
'Y': [4, np.nan, 8, np.nan, 3]})
print("DataFrame:")
print(df)
absolute_counts=df["X"].value_counts()
print("Frequencies of elements of X column:")
print(absolute_counts)
Produzione:
DataFrame:
X Y
0 1.0 4.0
1 2.0 NaN
2 3.0 8.0
3 NaN NaN
4 3.0 3.0
Frequencies of elements of X column:
3.0 2
2.0 1
1.0 1
Name: X, dtype: int64
Il absolute_counts fornisce il conteggio di ogni elemento univoco della colonna X utilizzando il metodo Series.value_counts().
Series.value_counts() non conta NaN per impostazione predefinita. Presenteremo come contarlo nelle sezioni seguenti.
Codici di esempio: imposta normalize=True nel metodo Series.value_counts() per ottenere le frequenze relative degli elementi
Se impostiamo normalize=True nel metodo Series.value_counts(), otteniamo le frequenze relative di tutti gli elementi univoci nell’oggetto Series.
import pandas as pd
import numpy as np
df = pd.DataFrame({'X': [1, 2, 3, np.nan, 3],
'Y': [4, np.nan, 8, np.nan, 3]})
print("DataFrame:")
print(df)
relative_counts=df["X"].value_counts(normalize=True)
print("Relative Frequencies of elements of X column:")
print(relative_counts)
Produzione:
DataFrame:
X Y
0 1.0 4.0
1 2.0 NaN
2 3.0 8.0
3 NaN NaN
4 3.0 3.0
Frequencies of elements of X column:
3.0 0.50
2.0 0.25
1.0 0.25
Name: X, dtype: float64
L’oggetto Serie relative_counts fornisce le frequenze relative di ogni elemento univoco della colonna X.
Le frequenze relative si ottengono dividendo tutte le frequenze assolute per la somma delle frequenze assolute.
Codici di esempio: imposta ascending=True nel metodo Series.value_counts() per ordinare gli elementi in base al valore della frequenza in ordine crescente
Se impostiamo ascending=True nel metodo Series.value_counts(), otteniamo l’oggetto Series con i suoi elementi ordinati in base ai valori di frequenza in ordine crescente.
Per impostazione predefinita, i valori nell’oggetto Series restituiti dal metodo Series.value_counts() sono ordinati in ordine decrescente in base ai valori di frequenza.
import pandas as pd
import numpy as np
df = pd.DataFrame({'X': [1, 2, 3, np.nan, 3],
'Y': [4, np.nan, 8, np.nan, 3]})
print("DataFrame:")
print(df)
sorted_counts=df["X"].value_counts(ascending=True)
print("Frequencies of elements of X column:")
print(sorted_counts)
Produzione:
DataFrame:
X Y
0 1.0 4.0
1 2.0 NaN
2 3.0 8.0
3 NaN NaN
4 3.0 3.0
Frequencies of elements of X column:
1.0 1
2.0 1
3.0 2
Name: X, dtype: int64
Fornisce il conteggio di ogni oggetto univoco nella colonna X con valori di frequenza ordinati in ordine crescente.
Codici di esempio: imposta il parametro bins nel metodo Series.value_counts() per ottenere il conteggio dei valori che si trovano in contenitori semiaperti
import pandas as pd
import numpy as np
df = pd.DataFrame({'X': [1, 2, 3, np.nan, 3, 4, 5],
'Y': [4, np.nan, 8, np.nan, 3, 2, 1]})
print("DataFrame:")
print(df)
counts=df["X"].value_counts(bins=3)
print("Frequencies:")
print(counts)
Produzione:
DataFrame:
X Y
0 1.0 4.0
1 2.0 NaN
2 3.0 8.0
3 NaN NaN
4 3.0 3.0
5 4.0 2.0
6 5.0 1.0
Frequencies:
(3.667, 5.0] 2
(2.333, 3.667] 2
(0.995, 2.333] 2
Name: X, dtype: int64
Divide l’intervallo di valori nella Series, cioè la colonna X in tre parti e restituisce i conteggi dei valori che si trovano in ciascun contenitore semiaperto.
Codici di esempio: imposta dropna=False nel metodo Series.value_counts() per contare NaN
Se impostiamo dropna=False nel metodo Series.value_counts(), otteniamo anche il conteggio dei valori NaN.
import pandas as pd
import numpy as np
df = pd.DataFrame({'X': [1, 2, 3, np.nan, 3],
'Y': [4, np.nan, 8, np.nan, 3]})
print("DataFrame:")
print(df)
counts=df["Y"].value_counts(dropna=False)
print("Frequencies:")
print(counts)
Produzione:
DataFrame:
X Y
0 1.0 4.0
1 2.0 NaN
2 3.0 8.0
3 NaN NaN
4 3.0 3.0
Frequencies:
NaN 2
3.0 1
8.0 1
4.0 1
Name: Y, dtype: int64
Fornisce il conteggio di ogni elemento nella colonna Y di DataFrame con il conteggio dei valori NaN.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn