en remplaçant les valeurs null dans une Pandas Dataframe à l'aide de applymap
J'ai eu un "Âge" de la colonne, mais parfois NaN valeurs sont affichées.
Je sais que je peux utiliser "fillna" pour cela, mais j'ai essayé de définir ma propre fonction (et d'apprendre à faire de cette façon) et l'utilisation applymap à dataframe
sans succès jusqu'à présent.
Age
69
49
NaN
54
NaN
J'ai essayé
def get_rid_of_nulls(value):
if value == np.nan:
return 'Is Null value'
else:
return value
avec ce pas de travail, soit
if value == None
if value isnull
if value == np.na
if value ==''
if value == NaN
if value == 'NaN'
Aucun des comparaisons semble fonctionner. Je suis mauvais pour vous, mais je suis coincé et je suis très têtu à utiliser fillna
grâce
Rien n'est égal à
utilisation
nan
, pas même nan
lui-même. Vous avez besoin d'utiliser une fonction spéciale pour vérifier si une valeur est nan
, vous ne pouvez pas utiliser ==
.utilisation
pd.isnull(value)
dans votre funcOriginalL'auteur useRj | 2016-01-18
Vous devez vous connecter pour publier un commentaire.
Qu'il y est de "remplacer" dans votre titre, et vous avez mentionné
fillna
mais pas lereplace()
méthode, vous pouvez également obtenir le même résultat en faisant quelque chose comme ça :NaN
intrinsèque ne peut pas être testé pour la valeur d'égalité, seul votre dernier extrait de code de travailJe l'ai testé avant de poster, il fonctionne très bien.
OK, mon mauvais passage de chaîne 'np.NaN' qui n'est pas le même
pas de problème!
il a travaillé!! Thx
OriginalL'auteur mgc
Vous pouvez utiliser
pd.isnull()
:De même, vous pouvez utiliser la propriété que
NaN
n'est pas égale à elle-même:l'op connaît fillna, et cette approche est stupide, j'en conviens . Je suis en supposant que l'op voulais juste savoir pourquoi leur approche n'a pas de travail, par opposition à la recherche les plus performantes de la méthode
ok assurez-vous toujours qu'appliquer est le dernier outil pour aller à
OriginalL'auteur EdChum