Python : NaN value in Pandas for a single value only

[亡魂溺海] 提交于 2019-11-29 01:40:23

问题


I just want to check if a single cell in Pandas series is null or not.

i.e, I'd like to check if a value is NaN. All other answers are for series and arrays, but not for single value.

I have tried pandas.notnull, pandas.isnull, numpy.isnan. Is there a solution for a single value only?


回答1:


Try this:

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



回答2:


STEP 1.)

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

----> Will give you dataframe with rows and column, if any value there is nan.

STEP 2.)

this will give you location in dataframe where exactly value is nan. then you could do

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



回答3:


You can use "isnull" with "at" to check a specific value in a dataframe.

For example:

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

To check the values:

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

-> True

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

-> False



来源:https://stackoverflow.com/questions/27754891/python-nan-value-in-pandas-for-a-single-value-only

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!