Como usar a função value_counts() do pandas (com exemplos)


Você pode usar a função value_counts() para contar a frequência de valores únicos em uma série de pandas.

Esta função usa a seguinte sintaxe básica:

 my_series. value_counts ()

Os exemplos a seguir mostram como usar essa sintaxe na prática.

Exemplo 1: Frequência de contagem de valores únicos

O código a seguir mostra como contar ocorrências de valores únicos em uma série pandas:

 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

Isso nos diz:

  • O valor 3 aparece 4 vezes.
  • O valor 4 aparece duas vezes .
  • O valor 7 aparece duas vezes .

E assim por diante.

Exemplo 2: frequência de contagem de valores únicos (incluindo NaN)

Por padrão, a função value_counts() não exibe a frequência dos valores NaN.

No entanto, você pode usar o argumento dropna para exibir a frequência dos valores 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

Exemplo 3: conte a frequência relativa de valores únicos

O código a seguir mostra como usar o argumento normalize para contar a frequência relativa de valores únicos em uma série pandas:

 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

Isso nos diz:

  • O valor 3 representa 40% de todos os valores da série.
  • O valor 4 representa 20% de todos os valores da série.
  • O valor 7 representa 20% de todos os valores da série.

E assim por diante.

Exemplo 4: Contando frequência em compartimentos

O código a seguir mostra como usar o argumento bins para contar a frequência de valores em uma série de pandas que caem em compartimentos de tamanho igual:

 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

Isso nos diz:

  • Existem 6 valores entre 3 e 5.
  • Existem 2 valores entre 5 e 7.
  • Existem 2 valores entre 7 e 9.

Exemplo 5: Conte a frequência dos valores no Pandas DataFrame

Também podemos usar a função value_counts() para calcular a frequência de valores únicos em uma coluna específica de um DataFrame do pandas:

 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

Recursos adicionais

Os tutoriais a seguir explicam como usar outras funções comuns em pandas:

Como usar a função description() no Pandas
Como contar o número de linhas no Pandas
Como contar avistamentos de grupos em pandas

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *