目录

  • 定义
  • 数据类型
  • 判断方法
  • numpy判断
  • Math判断
  • Pandas判断
  • 判断是否等于自身
  • Nan不属于任何取值区间


定义

NaN 和 None 都是 python 里的数据缺失值,表示当前某些数据为“空”。
更准确的说,NaN 是出现在 numpy/pandas 里的缺失值,而 None 是 Python 的缺失值。某种意义上,None 是比 NaN 更高级、更彻底的空值。

数据类型

type(None) —>NoneType
type(np.nan) ---->float

可以很直接的看到,在 python 里 None 是有着自己的独特类型(NoneType),而 Nan 则是属于 float 类型。

判断方法

numpy判断

import numpy as np

aa= float('nan')
print(np.isnan(aa))
True

Math判断

import math

aa = float('nan')
print(math.isnan(aa))
True

Pandas判断

import pandas as pd

aa = float('nan')
print(pd.isna(aa))
True

判断是否等于自身

利用Nan值不等于其自身判断

def is_nan(nan):
    return nan != nan


aa = float('nan')
print(is_nan(aa))
True

Nan不属于任何取值区间

# 只能输入数值型参数
def is_nan(nan):
    return not float('-inf') < nan < float('inf')

aa = float('nan')
print(is_nan(nan))
True