Pandas: como contar valores em uma coluna com condição
Você pode usar os seguintes métodos para contar o número de valores em uma coluna Pandas DataFrame com uma condição específica:
Método 1: contar valores em uma coluna com condição
len(df[df[' col1 ']==' value1 '])
Método 2: contar valores em múltiplas colunas com condições
len(df[(df[' col1 ']==' value1 ') & (df[' col2 ']==' value2 ')])
Os exemplos a seguir mostram como usar cada método na prática com o seguinte DataFrame do pandas:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
' pos ': ['Gu', 'Fo', 'Fo', 'Fo', 'Gu', 'Gu', 'Fo', 'Fo'],
' points ': [18, 22, 19, 14, 14, 11, 20, 28]})
#view DataFrame
print (df)
team pos points
0 A Gu 18
1 A Fo 22
2 A Fo 19
3 A Fo 14
4 B Gu 14
5 B Gu 11
6 B Fo 20
7 B Fo 28
Exemplo 1: Contar valores em uma coluna com condição
O código a seguir mostra como contar o número de valores na coluna da equipe onde o valor é igual a “A”:
#count number of values in team column where value is equal to 'A' len(df[df[' team ']==' A ']) 4
Podemos observar que existem 4 valores na coluna da equipe onde o valor é igual a “A”.
Exemplo 2: contar valores em múltiplas colunas com condições
O código a seguir mostra como contar o número de linhas no DataFrame onde a coluna team é igual a “B” e a coluna pos é igual a “Gu”:
#count rows where team is 'B' and pos is 'Gu' len(df[(df[' team ']==' B ') & (df[' pos ']==' Gu ')]) 2
Podemos ver que existem 2 linhas no DataFrame que atendem a ambas as condições.
Podemos usar sintaxe semelhante para contar o número de linhas que atendem ao número desejado de condições.
Por exemplo, o código a seguir mostra como contar o número de linhas que atendem a três condições:
- a equipe é igual a ‘B’
- pos é igual a ‘Gu’
- pontos são maiores que 12
#count rows where team is 'B' and pos is 'Gu' and points > 15 len(df[(df[' team ']==' B ') & (df[' pos ']==' Gu ') & (df[' points ']> 12 )]) 1
Podemos ver que uma única linha do DataFrame atende a todas as três condições.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:
Pandas: como encontrar a diferença entre duas linhas
Pandas: como deletar linhas contendo uma string específica
Pandas: Como remover linhas duplicadas em um DataFrame