Python判断Nan值
BurningSilence 人气:0Python判断Nan值方式小结
numpy判断
import numpy as np nan = float('nan') print(np.isnan(nan))
True
Math判断
import math nan = float('nan') print(math.isnan(nan))
True
Pandas判断
import pandas as pd nan = float('nan') print(pd.isna(nan))
True
判断是否等于自身
利用Nan值不等于其自身判断
def is_nan(nan): return nan != nan nan = float('nan') print(is_nan(nan))
True
Nan不属于任何取值区间
# 只能输入数值型参数 def is_nan(nan): return not float('-inf') < nan < float('inf') nan = float('nan') print(is_nan(nan))
True
python的nan处理
python中的nan,即Not A Number。
定义nan的方法
a = float(‘nan') or from decimal import Decimal a = Decimal(‘nan')
常见的计算结果为nan的情况
a = -float("inf") b = -float("inf") c = float("inf") d = float("inf") 1.a-b=nan 2. c-d=nan 3. 0*a=nan 4. 0*c=nan
今天在实现算法时遇到nan,出现这种情况最后发现是由于程序计算过程有”3“的情况导致计算结果不准确。处理方法加if判断,遇到3的情况使其结果为0.
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
加载全部内容