Supprimer NaN de la liste en Python
-
Supprimer
NaN
de la liste en Python en utilisant la méthodemath.isnan()
-
Supprimer
NaN
de la liste en Python en utilisant la méthodenumpy.isnan()
-
Supprimer
NaN
de la liste des chaînes en Python -
Supprimer
NaN
de la liste en Python en utilisant la méthodepandas.isnull()
Ce tutoriel examinera différentes méthodes pour trouver et supprimer les valeurs NaN
de la liste en Python. La valeur NaN
en programmation signifie Not a Number
, ce qui signifie que la valeur de la variable n’est pas un nombre.
Si une valeur NaN
apparaît dans un tableau ou une liste, cela peut créer des problèmes et des erreurs dans les calculs. Nous examinerons également les moyens de supprimer les valeurs de chaîne nan
de la liste dans ce tutoriel. Nous pouvons supprimer les valeurs NaN
ou 'nan'
de la liste, en utilisant les méthodes suivantes.
Supprimer NaN
de la liste en Python en utilisant la méthode math.isnan()
La méthode math.isnan(value)
prend un nombre value
en entrée et renvoie True
si la value
est une valeur NaN
et renvoie False
dans le cas contraire. On peut donc vérifier s’il y a une valeur NaN
dans une liste ou un tableau de nombres en utilisant la méthode math.isnan()
.
Nous avons besoin de la méthode math.isnan()
car if float('NaN') == float('NaN')
renvoie False
en Python ou on peut dire que deux valeurs NaN
ne sont pas égales en Python. L’exemple de code ci-dessous montre comment utiliser la méthode math.isnan()
pour supprimer la valeur NaN
de la liste.
import math
mylist = [1, 2, float("nan"), 8, 6, 4, float("nan")]
print(mylist)
newlist = [x for x in mylist if math.isnan(x) == False]
print(newlist)
Production:
[1, 2, nan, 8, 6, 4, nan]
[1, 2, 8, 6, 4]
Supprimer NaN
de la liste en Python en utilisant la méthode numpy.isnan()
La méthode np.isnan(array)
prend le array
comme entrée et renvoie True
pour l’index correspondant si c’est la valeur NaN
et renvoie False
sinon.
L’exemple de code ci-dessous montre comment supprimer les valeurs NaN
de la liste en utilisant la méthode numpy.isnan()
:
import numpy as np
mylist = [1, 2, float("nan"), 8, 6, 4, float("nan")]
print(mylist)
newlist = [x for x in mylist if np.isnan(x) == False]
print(newlist)
Production:
[1, 2, nan, 8, 6, 4, nan]
[1, 2, 8, 6, 4]
Supprimer NaN
de la liste des chaînes en Python
Supposons maintenant que la liste de nombres soit convertie en type chaîne, et nous voulons vérifier si elle contient des valeurs NaN
. Après conversion dans le type chaîne, la valeur NaN
devient une chaîne égale à 'nan'
et peut être facilement détectée et supprimée en la comparant à 'nan'
.
L’exemple de code ci-dessous montre comment supprimer la valeur NaN
de la liste de type de données chaîne:
mylist = [1, 2, "nan", 8, 6, 4, "nan"]
mylist = [str(x) for x in mylist]
print(mylist)
newlist = [x for x in mylist if x != "nan"]
print(newlist)
Production:
['1', '2', 'nan', '8', '6', '4', 'nan']
['1', '2', '8', '6', '4']
Supprimer NaN
de la liste en Python en utilisant la méthode pandas.isnull()
pandas.isnull(obj)
prend comme entrée un scalaire ou un tableau obj
et renvoie True
si la valeur est égale à NaN
, None
ou NaT
; sinon, il renvoie False
.
L’exemple de code montre comment utiliser la méthode pandas.isnull()
pour supprimer les valeurs NaN
de la liste de Python.
import pandas as pd
mylist = [1, 2, float("nan"), 8, float("nan"), 4, float("nan")]
print(mylist)
newlist = [x for x in mylist if pd.isnull(x) == False]
print(newlist)
Production:
[1, 2, nan, 8, nan, 4, nan]
[1, 2, 8, 4]
Supposons maintenant que nous ne connaissions pas le type de la liste ou si la liste contient les données de différents types de données. Dans ce cas, nous pouvons vérifier et supprimer les valeurs NaN
et 'nan'
de la liste en utilisant la méthode pandas.isnull()
en comparant chaque valeur de la liste avec la valeur 'nan'
.
On peut utiliser la méthode pandas.isnull()
car, contrairement aux méthodes mentionnées précédemment, la méthode pandas.isnull()
ne renvoie pas d’erreur si le type de données string est donné en entrée. On peut donc utiliser la méthode pandas.isnull()
pour supprimer les valeurs NaN
et 'nan'
de la liste ou d’un tableau en Python.
L’exemple de code ci-dessous montre comment utiliser la méthode pandas.isnull()
et la valeur 'nan'
pour supprimer les valeurs NaN
et 'nan'
de la liste en Python.
import pandas as pd
mylist = ["John", 23, "nan", "New York", float("nan")]
print(mylist)
newlist = [x for x in mylist if pd.isnull(x) == False and x != "nan"]
print(newlist)
Production:
['John', 23, 'nan', 'New York', nan]
['John', 23, 'New York']
Article connexe - Python List
- Convertir un dictionnaire en liste en Python
- Supprimer toutes les occurrences d'un élément d'une liste en Python
- Supprimer les doublons de la liste en Python
- Comment obtenir la moyenne d'une liste en Python
- Quelle est la différence entre les méthodes de liste append et extend
- Comment convertir une liste en chaîne de caractères en Python