Pandas: como remover colunas com valores nan


Você pode usar os seguintes métodos para remover colunas de um DataFrame do pandas com valores NaN:

Método 1: remover colunas com qualquer valor NaN

 df = df. dropna (axis= 1 )

Método 2: remover colunas com todos os valores NaN

 df = df. dropna (axis= 1 ,how=' all ')

Método 3: remover colunas com número mínimo de valores NaN

 df = df. dropna (axis= 1 ,thresh= 2 )

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', 'A', 'A', 'B', 'B', 'B'],
                   ' position ': [np.nan, 'G', 'F', 'F', 'C', 'G'],
                   ' points ': [11, 28, 10, 26, 6, 25],
                   ' rebounds ': [np.nan, np.nan, np.nan, np.nan, np.nan, np.nan]})

#view DataFrame
print (df)

  team position points rebounds
0 A NaN 11 NaN
1 AG 28 NaN
2 AF 10 NaN
3 BF 26 NaN
4 BC 6 NaN
5 BG 25 NaN

Exemplo 1: Remover Colunas com Valores NaN

O código a seguir mostra como remover colunas com valores NaN:

 #drop columns with any NaN values
df = df. dropna (axis= 1 )

#view updated DataFrame
print (df)

  team points
0 to 11
1 to 28
2 to 10
3 B 26
4 B 6
5 B 25

Observe que as colunas de posição e rebotes foram removidas porque ambas tinham pelo menos um valor NaN.

Exemplo 2: Remover colunas com todos os valores NaN

O código a seguir mostra como remover colunas com todos os valores NaN:

 #drop columns with all NaN values
df = df. dropna (axis= 1 ,how=' all ')

#view updated DataFrame
print (df)

  team position points
0 A NaN 11
1 AG 28
2 AF10
3 BF 26
4 BC 6
5 BG 25

Observe que a coluna bounces foi removida porque era a única coluna com todos os valores NaN.

Exemplo 3: Remover colunas com número mínimo de valores NaN

O código a seguir mostra como remover colunas com dois ou mais valores NaN:

 #drop columns with at least two NaN values
df = df. dropna (axis= 1 ,thresh= 2 )

#view updated DataFrame
print (df)

  team position points
0 A NaN 11
1 AG 28
2 AF10
3 BF 26
4 BC 6
5 BG 25

Observe que a coluna bounces foi removida porque era a única coluna com pelo menos dois valores NaN.

Nota : Você pode encontrar a documentação completa da função dropna() no pandas aqui .

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:

Como remover a primeira coluna no Pandas
Como remover colunas duplicadas no Pandas
Como deletar todas as colunas exceto algumas no Pandas

Add a Comment

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