pandas.notna#
- pandas.notna(obj)[源代码]#
检测类数组对象的非缺失值。
此函数接受标量或类数组对象,并指示值是否有效(非缺失,在数值数组中为``NaN``,在对象数组中为``None``或``NaN``,在日期时间类中为``NaT``)。
- Parameters:
- obj类数组或对象值
要检查*非*空值或*非*缺失值的对象。
- Returns:
- 布尔值或布尔值的类数组
对于标量输入,返回一个标量布尔值。对于数组输入,返回一个布尔数组,指示每个对应元素是否有效。
参见
isnapandas.notna 的布尔逆运算。
Series.notna检测 Series 中的有效值。
DataFrame.notna检测 DataFrame 中的有效值。
Index.notna检测 Index 中的有效值。
Examples
标量参数(包括字符串)会生成一个标量布尔值。
>>> pd.notna('dog') True
>>> pd.notna(pd.NA) False
>>> pd.notna(np.nan) False
ndarray 会生成一个布尔 ndarray。
>>> array = np.array([[1, np.nan, 3], [4, 5, np.nan]]) >>> array array([[ 1., nan, 3.], [ 4., 5., nan]]) >>> pd.notna(array) array([[ True, False, True], [ True, True, False]])
对于 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.notna(index) array([ True, True, False, True])
对于 Series 和 DataFrame,会返回相同类型的对象,其中包含布尔值。
>>> df = pd.DataFrame([['ant', 'bee', 'cat'], ['dog', None, 'fly']]) >>> df 0 1 2 0 ant bee cat 1 dog None fly >>> pd.notna(df) 0 1 2 0 True True True 1 True False True
>>> pd.notna(df[1]) 0 True 1 False Name: 1, dtype: bool