Python 中表示空数据使用 None,它是 NoneType 类型,如下所示:
- In [59]: type(None)
- Out[59]: NoneType
NoneType 类型没有对外公开属性和方法:
因此,None 比较容易理解,就是一种空类型。
但是使用过 NumPy 的肯定都会接触到 nan 这种类型,它的其他写法:NaN或 NAN,查看其类型却发现是 float 类型:
- In [63]: type(np.nan)
- Out[63]: float
这不免让人心生疑惑,nan 不是空数据,而是浮点数,那么到底等于多少?
原来这并不是NumPy特有的数值,而是IEEE754规定的特殊浮点数之一。
特殊在哪里?
这就要知道计算机是如何表示浮点数的,IEEE754 标准中规定 float 单精度浮点数,在机器中表示用 1 位表示数字的符号,用 8 位表示指数,用 23 位表示尾数,即小数部分,如下图所示:
对于单浮点数,指数部分由8位组成,所以取值范围:0到255,而指数等于0,255 这两个值,IEEE754 标准有特别的规定:
以上就是 NumPy 中 nan 的解释,弄清楚本质后,再来看几个关于它的运算。
既然 nan 不是一个数,所以拿它与任何浮点数比较,返回结果都是 False:
- In [64]: np.nan < 0
- Out[64]: False
- In [65]: np.nan == np.nan
- Out[65]: False
- In [66]: np.nan < np.inf
- Out[66]: False
找出 np.nan 出现的索引位置,可以使用 isnan 方法:
- In [67]: a = np.array([-9,np.nan,10,np.nan])
- # 找出np.nan出现的索引
- In [68]: a.where(np.isnan(a))
- # 返回结果
- # (array([1, 3]),)
企业邮箱 的 域名 多少钱一年?企业 邮箱 的域名,通常是使用企业网站域名。申请...
TOP云 (west.cn)11月7日消息,据米友厘米曝料,自己持有的单拼 域名 ding.life...
数年来,数字化转型已成为许多公司的主要任务,但由于当前持续蔓延的疫情,几乎...
Windows云服务器无法访问外网怎么办? Linux云服务器无法访问外网怎么办? 网站...
说起新顶级 域名 ,就不得不得提 .top域名 ,.top域名在新顶级域名浪潮中发展壮...
2000年后 随着智能手机的普及 智能化逐渐进入我们的生活 智能手表、智能家居、智...
经过这么多年的发展,已经从大数据1.0的BI/Datawarehouse时代,经过大数据2.0的W...
域名 未备案可以用空间吗?可以的。但如果不备案的话,不能使用大陆的空间服务器...
阿里巴巴、腾讯、支付宝、网易、IBM、谷歌、京东、 百度、滴滴等一线互联网公司...
这个问题总能见到一些朋友问。新人问,因为数据分析这个事儿听起来挺抽象又很高...