纠纷奇闻社交美文家庭
投稿投诉
家庭城市
爱好生活
创业男女
能力餐饮
美文职业
心理周易
母婴奇趣
两性技能
社交传统
新闻范文
工作个人
思考社会
作文职场
家居中考
兴趣安全
解密魅力
奇闻笑话
写作笔记
阅读企业
饮食时事
纠纷案例
初中历史
说说童话
乐趣治疗

从Python、MySql、Excel中进行对比,搞清楚空值

5月13日 飞凤谷投稿
  上一篇文章,老海分享了关于Pyhon类和对象的白话理解
  本篇我想分享一下空值:None、NULL与空字符:“”的区别和联系
  具体的实验环境为Python3。7、mysql8。0、Excel2016
  为什么需要搞清楚None、NULL和空字符“”?
  其实,无论作为数据分析、数据科学工作者,还是日常职场人士处理数据时
  我们经常需要将数据在Python、SQL数据库、CSVEXCEL文件之间来回导出导入
  而数据天生就是混乱的,复杂的,总是伴随着异常值和特殊值。
  所以出现这三个特殊值的情况,在所难免,有时甚至同时出现在同一组数据当中。
  加之三者在不同环境下比如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中显示为N而空字符没有变化还是
  那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,今天就到这里。喜欢老海的分享,请关注留言和转发,我是数据炼金师,老海
投诉 评论

从Python、MySql、Excel中进行对比,搞清楚空值上一篇文章,老海分享了关于Pyhon类和对象的白话理解本篇我想分享一下空值:None、NULL与空字符:“”的区别和联系具体的实验环境为Python3。7、mysq……同心律动,厚积薄发!听,文明城市创建的济南原标题:共赴一场同心律动的文明实践之约文明城市创建的目的是什么?济南给出的答案是:为了让环境更美、为了让风气更好、为了与美好生活相逢相伴。关于文明城市创建的思考带来方式的……西安网站建设SEO优化的评比标准你知道吗?网络上充斥着许多谈论西安网站优化的文章,其中也隐含大量迷思与陷阱。当你不小心身陷迷思中,除了可能做大量白工外,更可能让关键字搜寻排名不升反降!为了避免上述苦果,除了参考西……《天龙八部》中隐藏着一位高手,他比扫地僧更金庸笔下的十五部小说中,武功最为出神入化的当属《天龙八部》了,当然像《越女传》这种有点偏神话了,自然不能算,金庸许多有名的武功,都出自于天龙,比如六脉神剑、降龙十八掌、天山六阳……安徽十大名小吃排行,你的家乡有好吃的请推荐淮南牛肉汤安徽名吃、淮南一绝淮南牛肉汤是苏豫鲁皖沪一带家喻户晓的名小吃,据传源自清宫御膳秘方,融入“以食养身”的现代食补理念创制而成。主辅料均取材当地特产,高营养、高蛋白……别慌!不能入境名校变网校?美国留学新政最全今天,和高考生一样煎熬的莫过于美国留学生了吧。今日,美国海关移民总署(StudentandExchangeVisitorProgram,简称SEVP)出台新政,就今年秋季网课和……杨柳絮导致过敏?你欠杨柳絮一个道歉最是一年春好处,绝胜烟柳满皇都。每年春天,杨柳吐绿,絮花纷飞,可有人看着看着美景就打起了喷嚏“啊嚏!我又过敏了。”许多人一到春天就开始打喷嚏、流鼻涕、眼睛还发红、发……幼儿园感恩节手工,涂鸦火鸡华苏贺卡爱心等,Hey!我是Yoyo18w幼师与家长的手工交流平台关注我,集思广益陪孩子玩转手工!THANKS:是指对自己拥有的一切怀有诚挚的感恩之心。GIVE:是指将……嫡女和庶子的哪个身份更高?为何宁要做庶子,其实最好的解释便是元春还在出嫁的时候,家中儿女的光景,将元春与贾环相比,自然是可以的到结论。曹雪芹毕竟是贵族后裔,在这方面的认知自然是要比后人清晰。但是这也是仅仅限于家中有嫡子……【千城万站】城市站长特训营!共享亿级精准社社群空间站使命:帮普通人和优质项目连接精准流量池愿景:打造全国最大的高品质社群生态连接平台价值观:付出、死磕、相信、简单社群空间站简介社群空间站旨……孟婆汤火了:了解了这些文化常识,你还敢喝吗最近孟婆汤火了,火爆程度直逼当年的摔碗酒。然而,短视频时代,这种所谓的火瞬间就会降温。不过,作为传统文化的一个元素,能够在民间形成共识,说明我们文化基因的东西还是最珍贵的。然而……“打假斗士”方舟子:中国没有大象,所以象棋《广象戏格序》:象戏兵戏也,黄帝之战驱猛兽以为阵。象,兽之雄也,故戏兵以象戏名之。象棋的起源一直都是喋喋不休的争议话题,在各类的文化传说当中,有起源黄帝、起源神农氏,但这些只是……
纯植物染发剂什么牌子好(附10款最安全的纯植物纯植物染发剂什么牌子好?最安全的纯植物染发剂排行榜前十强是哪些?近些年来,染发已经成为一种时尚和趋势,很多人都喜欢去染头发,因为不同颜色的头发能给……酸菜鱼加盟店哪个牌子好(附利润排行前三的正宗酸菜鱼加盟店哪个牌子好?酸菜鱼加盟店哪个好吃?最火酸菜鱼加盟是哪家?关于酸菜鱼的加盟店不少创业者或者是消费者都十分关注,前者关注的是商机、是赚钱的……养殖什么好养又赚钱(附养殖利润最大的5种动物养殖什么好养又赚钱?养殖什么动物利润最大?现在搞养殖的人很多,但我们也都知道养殖行业的利润空间已经越来越小,因为市场已经更加透明化,竞争也日趋严峻……品牌汉堡店加盟哪家好(关键看这几点)品牌汉堡店加盟哪家好?随着现代化生活节奏的加快,汉堡作为一种现代快餐,已经在人们的心目中占据着较大的分量,尤其是现在的孩子都非常喜欢汉堡这种食物,……入门单反相机什么牌子好(附排行榜前五名)入门单反相机什么牌子好?新手入门相机哪个好?很多摄影初学者都想购买一款性价比高的相机用来学习、进步,但由于每个新手对摄影的侧重点跟要求不一样,所以……生活垃圾处理器怎么样(阐述垃圾处理器三大好处如今不少的城市都已经开始实行垃圾分类了,这也足以证明政府在这方面是很重视的。平时生活中每天都会有各种各样的垃圾产生,对生活环境的影响很大,垃圾处理问题非常关键。但如果要求人们每……小吃加盟店排行榜前十名是哪些(最新小吃排行榜小吃加盟店排行榜前十名是哪些?小吃加盟店哪个牌子利润最高、最赚钱?随着餐饮行业的高度饱和跟持续创新,人们对食物的要求也越来越高,尤其是一些小吃现在……麻辣烫加盟哪个品牌好(推荐排名前三的麻辣烫品麻辣烫加盟哪个品牌好?近些年来,麻辣烫加盟成为了很多人创业的首要选择,因为投资加盟一个麻辣烫店成本不高并且可以快速实现盈利。那么在众多的麻辣烫加盟……中式快餐10大品牌是哪些(2020年最新排行榜)中式快餐10大品牌是哪些?对于快餐很多人脑子里想到的都是类似麦当劳、肯德基、必胜客一类的外国品牌,当然不少人也会想到农民工日常会吃的快餐、便当。事……跳槽面试需要注意什么(附面试技巧和注意事项跳槽面试需要注意什么?马上就要春节了,很多人都在酝酿年后跳槽,跳槽也是每年春节后最容易出现的社会现象。因为每个人对自己的职业规划不一样,有些人觉得……液晶电视品牌排行榜前十名是哪些(2020最新排名液晶电视哪个牌子好?液晶电视品牌排行榜前十名是哪些?电视机作为家用电器的重要组成部分,是家用电器中使用最频繁的产品之一,不管是老人还是小朋友基本上……电脑处理器哪种好(附排行榜前五名)电脑处理器哪种好?电脑处理器排行榜前五名是哪些?CPU就如同人的大脑,在电脑上的直接体现就是运行速度以及处理效率,它直接决定着一台电脑的牛逼程度以……
友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找美丽时装彩妆资讯历史明星乐活安卓数码常识驾车健康苹果问答网络发型电视车载室内电影游戏科学音乐整形