É possível utilizar a seguinte sintaxe básica para substituir zeros por valores NaN num DataFrame do pandas:
df. replace (0, np. nan , inplace= True )
O exemplo seguinte mostra como utilizar esta sintaxe na prática.
Exemplo: Substituir Zero por NaN em Pandas
Suponhamos que temos o seguinte DataFrame do pandas:
import pandas as pd #create DataFrame 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 utilizar a seguinte sintaxe para substituir cada zero no DataFrame por um valor NaN:
import numpy as np #substituir todos os zeros por valores NaN df. replace (0, np. nan , inplace= True ) #ver DataFrame atualizado print (df) pontos assistências ressaltos 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
Repare que cada zero em cada coluna do DataFrame foi substituído por NaN.
Nota : Devemos utilizar o argumento inplace=True caso contrário, as alterações não serão efectuadas no DataFrame original.
Relacionadas: Como substituir valores NaN por zero no Pandas