pandas.isna#

pandas.isna(obj)[源代码]#

检测类数组对象中的缺失值。

此函数接受一个标量或类数组对象,并指示值是否为缺失值(数值数组中的 NaN,对象数组中的 NoneNaN,日期时间类中的 NaT)。

Parameters:
obj标量或类数组

要检查空值或缺失值 else 的对象。

Returns:
布尔值或布尔值的类数组

对于标量输入,返回一个标量布尔值。对于数组输入,返回一个布尔数组,指示每个对应元素是否缺失。

参见

notna

pandas.isna 的布尔反值。

Series.isna

检测 Series 中的缺失值。

DataFrame.isna

检测 DataFrame 中的缺失值。

Index.isna

检测 Index 中的缺失值。

Examples

标量参数(包括字符串)会生成一个标量布尔值。

>>> pd.isna('dog')
False
>>> pd.isna(pd.NA)
True
>>> pd.isna(np.nan)
True

ndarray 会生成一个布尔 ndarray。

>>> array = np.array([[1, np.nan, 3], [4, 5, np.nan]])
>>> array
array([[ 1., nan,  3.],
       [ 4.,  5., nan]])
>>> pd.isna(array)
array([[False,  True, False],
       [False, False,  True]])

对于 Index,会返回一个布尔 ndarray。

>>> index = pd.DatetimeIndex(["2017-07-05", "2017-07-06", None,
...                           "2017-07-08"])
>>> index
DatetimeIndex(['2017-07-05', '2017-07-06', 'NaT', '2017-07-08'],
              dtype='datetime64[ns]', freq=None)
>>> pd.isna(index)
array([False, False,  True, False])

对于 Series 和 DataFrame,会返回相同类型的对象,其中包含布尔值。

>>> df = pd.DataFrame([['ant', 'bee', 'cat'], ['dog', None, 'fly']])
>>> df
     0     1    2
0  ant   bee  cat
1  dog  None  fly
>>> pd.isna(df)
       0      1      2
0  False  False  False
1  False   True  False
>>> pd.isna(df[1])
0    False
1     True
Name: 1, dtype: bool