python excel 空值_Python/Excel/SPSS/SQL数据处理方法比较之4 - 空值处理
处理完重复值后,我们开始处理空值。
首先依然是定位空值,然后可以选择删除整行,但更多的时候我们选择使用某个值来填充。
Python
过滤空值
如果数据量较小,可直接使用isnull()函数逐一判断每个行是否有空值:
df.isnull()
或者使用any函数返回是否存在空值:
any(df.isnull())
但是如果数据量较大,则需要使用高级技巧,即apply()函数和匿名函数,对每一列x的空值进行计数:
df.apply(lambda x:np.sum(x.isnull()))
2. 删除空值
如果空值行比例较小(5%以下),则可以使用dropna()函数直接删除存在空值的行:
df.dropna()
可以传入参数how='all'来只删除全是空值的行。
可传入参数axis=1来删除空值较多的列(如85%以上空值):
df.drop(['列名'],axis=1)
3. 填充空值
如果空值行比例不小,则不能进行删除,应该使用fillna()函数进行补全,如简单填充数字0:
df['数值列'].fillna(value=0)
当然,更常见的是填充均值,众数和中位数,此时可以向value参数传入一个字典:
df.fillna(value={'性别':df.性别.mode()[0],'年龄':df.年龄.mean(),'收入':df.收入.median()})
此处给性别列空值填充众数(注意,使用mode()将得到每个值的频数,从高到低排列,取其中第一位的就是众数),给年龄列填充均值,给收入列填充中位数。
另外,使用这三个统计量是为了让空值填充的干扰降低。不过如果无所谓某一列空值的干扰,单纯只是想让空值消失,那么也可以这么干:
df.fillna(method='ffill')
df.fillna(method='bfill')
传入ffill或bfill给method参数,每个缺失值分别使用上一个值或下一个值填充自己。
最后,以上返回的结果都是视图,如果需要原数据产生变化,可传入inplace=True.
Excel
1.过滤空值
首先还是要使用ctrl+shift+space来选定你要过滤的区域,然后:开始-编辑-查找与选择-定位条件-选择【空值】
将会自动定位出所有的空值。
2.删除空值
在已经使用以上方法过滤出空值后,(不要选中)右键点击第一个空值单元格,选择删除-整行,即可。
3. 填充空值
在已经使用以上方法过滤出空值后,选择第一个空值单元格,填充你要的值,然后使用Ctrl+Enter,即可填充到所有空值中去。
SPSS
1.过滤空值
分析-缺失值分析-指定匹配变量-模式-显示:具有缺失值的个案-继续-确定。之后在输出窗口中会显示有缺失值的个案。
2.填充空值
转换-替换缺失值-选择要填充的变量-选择填充方法(默认序列均值)-确定。会有一个新变量产生,里面是已经填充完的变量。
SQL
1.过滤空值
select * from 表名
where 字段名 is null;
2.替换空值
update 表名
set 字段名=
case when 字段名 is null then 替换值
else 字段名
end;
3.删除空值
delete from 表名
where 字段名 is null;
python excel 空值_Python/Excel/SPSS/SQL数据处理方法比较之4 - 空值处理相关推荐
- spss与python和sql区别_Python/Excel/SPSS/SQL数据处理方法比较之2 - 数据查看
继续这个系列.我们导入了数据,接下来做一下基本的查看. Python 我们的处理对象依然是DataFrame对象df. 首先使用head()函数(或tail()函数)查看最前(最后)的5条记录,获取粗 ...
- python excel数据处理 空格替换_Python/Excel/SPSS/SQL数据处理方法比较之5 - 空格清理...
我说的空格清理,是存在于字符串前后(以及中间)的空格. 做过数据清洗才知道空格有多么恶心(平静脸 Python 1.左右两侧空格 如果不使用包,则对于一个字符串左右两边的空格,可以使用字符串函数str ...
- python工程师工资条_python + excel工资条自动生成
原博文 2020-01-22 16:26 − 年终绩效分配结果出来了,领导要求每人要清楚地知道自己的情况.要求:总绩效和各分类都要清楚.这就表示我们要给每人六个纸条,一个总的,五个分的.打出来,裁开, ...
- python 连通区域_python skimage 连通性区域检测方法
python skimage 连通性区域检测方法 涉及到的函数为 import matplotlib.pyplot as plt from skimage import measure, color ...
- python color属性_Python中类的属性、方法及内置方法
1.类的属性成员变量 对象的创建创建对象的过程称之为实例化,当一个对象被创建后,包含三个方面的特性对象聚丙属性和方法, 句柄用于区分不同的对象, 对象的属性和方法,与类中的成员变量和成员函数对应, o ...
- python假设检验平均_Python|Excel|SPSS|R|Stata|Eviews统计数据假设检验T|F|卡方检验
拍价即为成交价,不按数据量.任务量收费,价格透明,不用询价,节省时间 现在不说专业高效这些话,相信我的认真负责能够赢得您的认可 使用各种统计数据分析软件提供数据分析服务,包含数据整理.处理.清洗.挖掘 ...
- python日历图_Python+Excel制作精美壁纸日历,任意DIY
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 以下文章来源于Python实用宝典 ,作者Python实用宝典 给自己10分钟( ...
- python操作excel模板_Python Excel模板读写,维护公式和格式
我已经查过了,似乎找不到我要找的东西.我在这里找到的所有线索最后都成了我的死胡同.xlrd.xlwt和xlutils几乎可以满足我的需要,但是-基本思想是,我需要使用Python将简单数据(字符串)写 ...
- python操作excel命令_python excel操作总结
1.openpyxl包的导入 Dos命令行输入pip install openpyxl==2.3.3 这里注意一下openpyxl包的版本问题 版本装的太高有很多api不支持了,所以笔者这里用的是2. ...
- python xlsx读写_Python Excel文件的读写操作(xlwt xlrd xlsxwriter)
Python语法简洁清晰,作为工作中常用的开发语言还是很强大的(废话). python关于Excel的操作提供了xlwt和xlrd两个的包作为针对Excel通用操作的支持,跨平台(Mac.Window ...
最新文章
- 23、OSPF配置实验之特殊区域Totally NSSA
- SecureCRT 或者 超级终端 始终无法ping通主机
- 个体重构:将重构应用到生活中
- css随堂笔记(一)
- python安装snaps_如何管理Ubuntu Snaps:没人告诉你的东西
- 报错,void AcceptAndReadAvailableTracks(const QString param, int timeout)
- mysql建立索引的优缺点|创建索引alter或create索引分类(PRIMARY KEY,UNIQUE KEY,FULLTEXT,INDEX)作用查看索引show index from table
- 压缩包加密破解常见方法总结 CTF中Misc必备
- 黑莓BlackBerry手机刷机ROM常见问题
- 解决办法:My Endnote Library.enl constrains an incorrect path
- 李佳琦以特殊人才落户上海,“带货一哥”即将成为“新上海人”
- 键盘怎么打出计算机,电脑键盘上的@怎么打出来?
- 50天入门人工智能!
- python 降低图片分辨率的两种方法
- canvas 绘制七巧板
- uniapp生成canvas商品海报
- WordPress死链自动收集方便提交到站长平台
- Latex各种箭号符号,以及在箭头上方添加字母等符号的方法
- 阿里云服务器自动备份
- Qt学习笔记:自定义窗体的移动+控件图标
热门文章
- 【STM32】时钟相关函数和类型
- 评估指标【簇内误差平方和】-轮廓系数
- summernote 富文本编辑器上传七牛云服务器
- Android Error:Some file crunching failed, see logs for details
- 苹果mac怎么连接打印机? mac系统添加共享打印机的技巧
- 如何区别测试计划和测试方案
- 在VMware下安装中标麒麟操作系统7.0以及Neokylin基础常用知识
- 视频直播的购物平台,网站,app
- 学校邮箱的pop服务器地,常用邮箱的POP与SMTP服务器
- 一道数学题目-如何证明(a,b)=1,则(a^n,b^n)=1