web-dev-qa-db-fra.com

Python: valeur NaN dans les pandas pour une seule valeur

Je veux juste vérifier si une seule cellule de la série Pandas est nulle ou non. 

je voudrais vérifier si une valeur est NaN. Toutes les autres réponses concernent les séries et les tableaux, mais pas les valeurs uniques. 

J'ai essayé pandas.notnull, pandas.isnull, numpy.isnan. Existe-t-il une solution pour une seule valeur?

26
vidit

Essaye ça:

import pandas as pd
import numpy as np
from pandas import *

>>> L = [4, nan ,6]
>>> df = Series(L)

>>> df
0     4
1   NaN
2     6

>>> if(pd.isnull(df[1])):
        print "Found"

Found

>>> if(np.isnan(df[1])):
        print "Found"

Found
36
aerokite

Vous pouvez utiliser "isnull" avec "at" pour vérifier une valeur spécifique dans un cadre de données.

Par exemple:

import pandas as pd
import numpy as np

df = pd.DataFrame([[np.nan, 2], [1, 3], [4, 6]], columns=['A', 'B'])

Yeilds:

    A   B
0   NaN 2
1   1.0 3
2   4.0 6

Pour vérifier les valeurs:

pd.isnull(df.at[0,'A'])

-> vrai

pd.isnull(df.at[0,'B'])

-> Faux

0
sparrow

ÉTAPE 1.)

df[df.isnull().any(1)]

----> Vous donnera un cadre de données avec des lignes et des colonnes, si une valeur quelconque est nan.

ÉTAPE 2.)

cela vous donnera l'emplacement dans le cadre de données où exactement la valeur est nan . alors vous pourriez faire

if(**df.iloc[loc_row,loc_colum]==np.nan**):
    print"your code here"
0
yashu vishnalia