Como usar “não é nulo”? em pandas (com exemplos)
Você pode usar a função pandas notnull() para testar se os elementos de um DataFrame do pandas são nulos ou não.
Se um elemento for igual a NaN ou None, a função retornará False .
Caso contrário, a função retornará True .
Aqui estão várias maneiras comuns de usar esta função na prática:
Método 1: Filtrar linhas sem valores nulos em qualquer coluna
df[df. notnull (). all ( 1 )]
Método 2: Filtrar linhas sem valores nulos em uma coluna específica
df[df[[' this_column ']]. notnull (). all ( 1 )]
Método 3: conte o número de valores diferentes de zero em cada coluna
df. notnull (). sum ()
Método 4: conte o número de valores diferentes de zero em todo o DataFrame
df. notnull (). sum (). sum ()
Os exemplos a seguir mostram como usar cada método na prática com o seguinte DataFrame do pandas:
import pandas as pd import numpy as np #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, 22, 19, 14, 14, 11, 20, np.nan], ' assists ': [5, np.nan, 7, 9, 12, 9, 9, np.nan], ' rebounds ': [11, 8, 10, 6, 6, 5, np.nan, 12]}) #view DataFrame print (df) team points assists rebounds 0 A 18.0 5.0 11.0 1 B 22.0 NaN 8.0 2 C 19.0 7.0 10.0 3D 14.0 9.0 6.0 4 E 14.0 12.0 6.0 5 F 11.0 9.0 5.0 6G 20.0 9.0 NaN 7 H NaN NaN 12.0
Exemplo 1: Filtrar linhas sem valores nulos em qualquer coluna
O código a seguir mostra como filtrar o DataFrame para exibir apenas linhas sem valores nulos em qualquer coluna:
#filter for rows with no null values in any column
df[df. notnull (). all ( 1 )]
team points assists rebounds
0 A 18.0 5.0 11.0
2 C 19.0 7.0 10.0
3D 14.0 9.0 6.0
4 E 14.0 12.0 6.0
5 F 11.0 9.0 5.0
Observe que cada uma das linhas neste DataFrame filtrado não possui valores nulos em nenhuma coluna.
Exemplo 2: Filtrar linhas sem valores nulos em uma coluna específica
O código a seguir mostra como filtrar o DataFrame para exibir apenas linhas sem valores nulos na coluna auxiliar :
#filter for rows with no null values in the 'assists' column
df[df[[' assists ']]. notnull (). all ( 1 )]
team points assists rebounds
0 A 18.0 5.0 11.0
2 C 19.0 7.0 10.0
3D 14.0 9.0 6.0
4 E 14.0 12.0 6.0
5 F 11.0 9.0 5.0
6G 20.0 9.0 NaN
Observe que cada uma das linhas neste DataFrame filtrado não possui valores nulos na coluna Helper .
Exemplo 3: conte o número de valores diferentes de zero em cada coluna
O código a seguir mostra como contar o número de valores diferentes de zero em cada coluna do DataFrame:
#count number of non-null values in each column
df. notnull (). sum ()
team 8
points 7
assists 6
rebounds 7
dtype: int64
Pelo resultado podemos ver:
- A coluna da equipe possui 8 valores diferentes de zero.
- A coluna de pontos possui 7 valores diferentes de zero.
- A coluna de assistências possui 6 valores diferentes de zero.
- A coluna bounces tem 7 valores diferentes de zero.
Exemplo 4: conte o número de valores diferentes de zero em todo o DataFrame
O código a seguir mostra como contar o número de valores diferentes de zero em todo o DataFrame:
#count number of non-null values in entire DataFrame
df. notnull (). sum (). sum ()
28
Na saída, podemos ver que existem 28 valores diferentes de zero em todo o DataFrame.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras operações comuns de filtragem em pandas:
Como filtrar um DataFrame do Pandas por valores de coluna
Como filtrar “Não contém” no Pandas
Como filtrar um DataFrame do Pandas em múltiplas condições