奇熊百科 > 生活 > 正文

​null的数据类型是什么 nullspace

时间:2024-02-02 15:17

来源:奇熊百科

点击:

null的数据类型是什么 nullspace

上一篇文章,老海分享了关于Pyhon类和对象的白话理解

本篇我想分享一下 空值:None、NULL 与 空字符: “” 的区别和联系

具体的实验环境为Python3.7、mysql8.0、Excel2016

为什么需要搞清楚None、NULL和空字符“”?

其实,无论作为数据分析、数据科学工作者,还是日常职场人士处理数据时

我们经常需要将数据在Python、SQL数据库、CSV/EXCEL文件之间来回导出导入

而数据天生就是混乱的,复杂的,总是伴随着异常值和特殊值

所以出现这三个特殊值的情况,在所难免,有时甚至同时出现在同一组数据当中。

加之三者在不同环境下比如python、mysql、excel中,理解角度和设计逻辑各有不同,

往往会造成这些数据,在数据处理中前后不一致、各种奇怪BUG报错发生。

因此对于它们,我们处理时一定要特别小心,尽量避免后续数据存储和计算出现麻烦!

下面老海从三个角度来解释一下:

一张图看透,None、NULL、空字符在Python、SQL、EXCEL中的整体规则

具体规则见下图:

一张图直观解释

网上关于它们的解释说法很多,说实话有些眼花缭乱了。

我自己整理一个简化的表格,这样看起来直观多了。

注意三点:

pandas中时间型数据的空值,显示为NaT,含义与NaN相同Exel中的空值表示,就是空,没有什么特别字符来表达NULL只出现在数据库数据中,Python中没有这个东西!

下面我们通过具体的数据案例来实验一下:

从excel、mysql数据库对比来看

我们先看一下None、NULL和空字符“”在Excel与数据库之间切换时是如何变化的

首先在excel中原始数据如下:

存储在xlsx中,excel2016版本

其中,性别字段包括了一个空字符、一个空值;年龄字段包括了一个空字符、一个空值

其次,将excel数据导入到mysql中

可以发现excel中的空值,在数据库中显示Null

而空字符显示为空白,空数值显示为0(与数据库设置有关)

然后,我们把从数据库导出数据到CSV中

我们可以发现从数据库到CSV中,NULL显示为空,其他没有变化

加入Python、pandas后再来看一下

首先,看看Python中空值表达

None、NaN、空字符“”,它们看似都是表达空值含义,而实际上它们都有各自不同的数据类型

None是一个空值,即空对象,它Python里一个特殊的值

None不能理解为0,因为0是有意义的;而None是一个特殊的空值,None不是空字符串。

而NaN,是pandas和numpy的专属类型,属于浮点型数据,代表缺失值

而“”,是空字符的表示。

再次,Python中没有看到NULL

事实是,null 和 NULL 表示数据库中的空值, python中不存在它们这个对象!

可能很多资料把NULL也写进了Python解释说明中,这个就真的有些说不过去了

如果直接将xlsx文件读取到pandas中

我们发现excel中的空值和空字符,都转为了NaN缺失值的表达!注意此时并没有出现None空值对象

如果从pandas导出到xlsx文件中

我们可以看出pandas中的NaN,在excel中显示为空,没有任何内容。

那Python中数据转为pandas会发生什么?

Python中的None被转为numpy中的NaN了,不再以None显示

Python中的空字符“”,转为pandas后统一显示为

将数据库中导出CSV,读取到pandas后会怎样?

数据库中的空值和空字符,均显示为NaN

直连数据库,读取到python后会怎样?

数据库中NULL,全部在pandas中显示为None;而空字符没有变化还是”

那pandas对数据库读取的数据有怎么样的转化规则?

pandas会将数据库中数值型字段中的None转为NaN,但是其他类型字段会保留None

同时pandas在进行count计算是,不计算None和NaN,但计算空字符”

而进行sum计算时,会同时排除掉NaN和None。

pandas中如何判断空值类型,又如何转化None和NaN呢?

一般我们可以借助,isnull()和isna()来直接进行判断,它们会将None和NaN都识别为空值含义。

而pandas中很多函数并不支持None的运算,因为尽量将None转换为NaN。

OK,折腾了半天,实验就到这里了,总体来说,区别它们还是很费心力的,而且还有很多复杂的情况存在,以及个别特殊情况的需要处理。这里老海就不在一一展开了。

总之,在实际使用中,老海建议遵守三个法则,来保证特殊值一致性

法则1:在导取数据后,我们第一时间把空字符替换为None、NaN或者NULL

法则2:在使用pandas或者numpy时,我们将None统一替换为NaN

法则3:在数据导入数据库时,我们将NaN统一替换为None

以上法则,也是根据日常处理特殊值经验而来,不一定适用于所有情况,优点是简单直接便于记忆,也可尽量避免后期出现数据转换带来的困扰。

OK,今天就到这里。喜欢老海的分享,请关注留言和转发,我是数据炼金师,老海

相关标签:

相关推荐

​“119”全国消防日丨预防为主,生命至上!

​“119”全国消防日丨预防为主,生命至上!

“119”全国消防日丨预防为主,生命至上! 2023年11月9日是第32个全国消防日,11月也是全国消防宣传月。为进一步提高消防安全责任意识,增强自我防护能力,坚决遏制火灾事故的发生...

2024-02-02 15:15:49

​网贷还不起会拘留吗 网贷还不上会坐牢吗?

​网贷还不起会拘留吗 网贷还不上会坐牢吗?

网贷还不起会拘留吗 网贷还不上会坐牢吗? 网贷,这个词语近几年频频出现在我们眼前。贷款公司凭借着门槛低、金额大、放款快、周期长等特点迅速在市场上生根发芽,给急需用钱的...

2024-02-02 15:13:44

​22副图,让您了解髌骨正常解剖、变异及常见疾病!

​22副图,让您了解髌骨正常解剖、变异及常见疾病!

22副图,让您了解髌骨正常解剖、变异及常见疾病! 来源:新乡医学影像 商务合作:2519330936@qq.com Fig. 1: Normal knee radiographs 图1:正常膝关节 Fig. 2: Normal MR images 图2:正常膝关节MR图像...

2024-02-02 15:11:39

​荣耀x几好用 荣耀x系列性价比高

​荣耀x几好用 荣耀x系列性价比高

荣耀x几好用 荣耀x系列性价比高 站在市场的角度来看,其实千元机才是市场的主力军,因为可以让更多的人以较低的价格就能接触到智能手机,对手机需求不高的人也可以少掏一些钱,...

2024-02-02 15:09:34

​全世界人口排名前十名(全世界面积排名前十的国家)

​全世界人口排名前十名(全世界面积排名前十的国家)

全世界人口排名前十名(全世界面积排名前十的国家) 大家好,近期很多朋友对于 全世界人口 排名前十名产不是很理解。然后还有一些网友想弄清楚全世界面积排名前十的国家,(...

2024-02-02 13:39:12

​拼多多补单怎么补(拼多多补单怎么补关键词)

拼多多补单怎么补(拼多多补单怎么补关键词) 大家好,最近还有很多朋友对于拼多多补单怎么补不是很理解。然后还有一些网友想弄清楚拼多多补单怎么补关键词,网小编已经为你找...

2024-02-02 13:37:07

​鸡眼的图片(鸡眼的图片,症状和处理方法)

鸡眼的图片(鸡眼的图片,症状和处理方法) 大家好,近期很多朋友对于 鸡眼的图片 产不是很理解。然后还有一些网友想弄清楚鸡眼的图片,症状和处理方法,(www)已经为你找到了相...

2024-02-02 13:35:02

​26岁生日朋友圈文案(自己26岁生日朋友圈文案)

26岁生日朋友圈文案(自己26岁生日朋友圈文案) 大家好,近期很多朋友对于 26岁生日朋友圈文案 产不是很理解。然后还有一些网友想弄清楚自己26岁生日朋友圈文案,(www)已经为你...

2024-02-02 13:32:57

​手机桌面的图标大小如何调整(vivo手机桌面的图标大小如何调整)

手机桌面的图标大小如何调整(vivo手机桌面的图标大小如何调整) 大家好,近期很多朋友对于 手机桌面的图标大小如何调整 产不是很理解。然后还有一些网友想弄清楚vivo手机桌面的...

2024-02-02 13:30:52

​生日快乐最新图片(生日快乐最新图片 祝福)

生日快乐最新图片(生日快乐最新图片 祝福) 大家好,近期很多朋友对于 生日快乐最新图片 产不是很理解。然后还有一些网友想弄清楚生日快乐最新图片 祝福,(www)已经为你找到...

2024-02-02 13:28:47

​怎么把签名p到word上(怎么把签名p上去)

怎么把签名p到word上(怎么把签名p上去) 像这样的手写签名,你知道是怎么做出来的吗? 在日常工作中经常会使用Word文档,有时在文档中编辑XX申请书,需要插入手写的签名,可领导...

2024-02-02 13:26:42

​哑口无言是什么生肖(缄口不言是什么生肖)

​哑口无言是什么生肖(缄口不言是什么生肖)

哑口无言是什么生肖(缄口不言是什么生肖) 近几年的春晚,蔡明老师可谓是全国最火的老太太,不但身材火辣,即便是年轻人不敢尝试的高抬腿,她也伸手就来,而且性格火爆,一言...

2024-02-02 13:24:38

​微店是什么(微店是什么平台)

微店是什么(微店是什么平台) 大家好,最近还有很多朋友对于微店是什么不是很理解。然后还有一些网友想弄清楚微店是什么平台,网小编已经为你找到了相关问题的答案,接下来和...

2024-02-02 13:22:33

​苹果几是双卡双待(苹果13是双卡双待手机吗)

​苹果几是双卡双待(苹果13是双卡双待手机吗)

苹果几是双卡双待(苹果13是双卡双待手机吗) 苹果手机双卡双待机型有:iPhone XS Max、iPhone XR、iPhone 11、iPhone 11 Pro、iPhone 11 Pro Max、iPhone 12、iPhone 12 Pro、iPhone 12 Pro Max、iPhone 13、iPhon...

2024-02-02 13:20:28

​浅聊抑郁症

​浅聊抑郁症

浅聊抑郁症 李玟的去世,引发了抑郁症的一次社会性网上大讨论,对于抑郁症的解释,我们还是尊重科学的定义,不以我们自己听到或看到片面性认知去结论。 抑郁症在我们的生活里...

2024-02-02 04:18:33

​鱼类生殖系统的结构 鱼类生殖系统特点

​鱼类生殖系统的结构 鱼类生殖系统特点

鱼类生殖系统的结构 鱼类生殖系统特点 相比品尝水产品中各类鱼虾蟹贝的肉(肌肉组织),来自各类海鲜、河鲜的内脏则较少被人们认为属于可食用部位,且大多时候被人一弃了之。...

2024-02-02 04:16:28

​iphone airpods3 苹果airpods3有什么新功能

​iphone airpods3 苹果airpods3有什么新功能

iphone airpods3 苹果airpods3有什么新功能 作者| ByArsT 摄影| elvis 来源| 极果编辑部 可能很多朋友都知道,3月末或者4月,苹果将会开一场「春季发布会」,在会上苹果会发布AirPods 3、i...

2024-02-02 04:14:23

​小学数学单位换算怎么讲 小学数学单位的换算

​小学数学单位换算怎么讲 小学数学单位的换算

小学数学单位换算怎么讲 小学数学单位的换算 重量单位换算 1吨=1000千克 1吨=1000 000克 吨 :吨是重量单位,公制一吨等于1000公斤:计算船只容积的单位,一吨等于2.83立方米(合100立方...

2024-02-02 04:12:18

​首套房两成首付还是三成划算 首套房两成首付政策

​首套房两成首付还是三成划算 首套房两成首付政策

首套房两成首付还是三成划算 首套房两成首付政策 8月31日,中国人民银行、国家金融监督管理总局发布《关于调整优化差别化住房信贷政策的通知》和《关于降低存量首套住房贷款利...

2024-02-02 04:10:13

​理性看待北向资金波动,专家建议适度降低北向资金披露频率

理性看待北向资金波动,专家建议适度降低北向资金披露频率 21世纪经济报道记者雷晨 北京报道 近期,北向资金连续净流出创下开通以来的记录,尤其是每日北向资金在盘中实时净流...

2024-02-02 04:08:08