Pandas: como substituir zero por nan


Você pode usar a seguinte sintaxe básica para substituir zeros por valores NaN em um DataFrame do pandas:

 df. replace (0, np. nan , inplace= True )

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: substitua zero por NaN em Pandas

Suponha que temos o seguinte DataFrame do pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' points ': [25, 0, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 0, 7, 0, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 0, 9, 0]})

#view DataFrame
print (df)

   points assists rebounds
0 25 5 11
1 0 0 8
2 15 7 10
3 14 0 6
4 19 12 6
5 23 9 0
6 25 9 9
7 29 4 0

Podemos usar a seguinte sintaxe para substituir cada zero no DataFrame por um valor NaN:

 import numpy as np

#replace all zeros with NaN values
df. replace (0, np. nan , inplace= True )

#view updated DataFrame
print (df)

   points assists rebounds
0 25.0 5.0 11.0
1 NaN NaN 8.0
2 15.0 7.0 10.0
3 14.0 NaN 6.0
4 19.0 12.0 6.0
5 23.0 9.0 NaN
6 25.0 9.0 9.0
7 29.0 4.0 NaN

Observe que cada zero em cada coluna do DataFrame foi substituído por NaN.

Nota : Devemos usar o argumento inplace=True caso contrário as alterações não serão feitas no DataFrame original.

Relacionado: Como substituir valores NaN por zero no Pandas

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras operações comuns em pandas:

Como substituir valores específicos no Pandas
Como filtrar um DataFrame do Pandas por valores de coluna
Como preencher valores NA para múltiplas colunas no Pandas

Add a Comment

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