数据清洗--DataFrame中的空值处理方法


Posted in Python onJuly 03, 2018

数据清洗是一项复杂且繁琐的工作,同时也是整个数据分析过程中最为重要的环节。

在python中空值被显示为NaN。首先,我们要构造一个包含NaN的DataFrame对象。

>>> import numpy as np
>>> import pandas as pd
>>> from pandas import Series,DataFrame
>>> from numpy import nan as NaN
>>> data = DataFrame([[12,'man','13865626962'],[19,'woman',NaN],[17,NaN,NaN],[NaN,NaN,NaN]],columns=['age','sex','phone'])
>>> data
 age sex  phone
0 12.0 man 13865626962
1 19.0 woman   NaN
2 17.0 NaN   NaN
3 NaN NaN   NaN

删除NaN

删除NaN所在的行

删除表中全部为NaN的行

>>> data.dropna(axis=0, how='all')
 age sex  phone
0 12.0 man 13865626962
1 19.0 woman   NaN
2 17.0 NaN   NaN

删除表中任何含有NaN的行

>>> data.dropna(axis=0, how='any')
 age sex  phone
0 12.0 man 13865626962

删除NaN所在的列

删除表中全部为NaN的列

>>> data.dropna(axis=1, how='all')
 age sex  phone
0 12.0 man 13865626962
1 19.0 woman   NaN
2 17.0 NaN   NaN
3 NaN NaN   NaN

删除表中任何含有NaN的列

>>> data.dropna(axis=1, how='any')
Empty DataFrame
Columns: []
Index: [0, 1, 2, 3]

注意:axis 就是”轴,数轴“的意思,对应多维数组里的”维“。此处作者的例子是二维数组,所以,axis的值对应表示:0轴(行),1轴(列)。

填充NaN

如果不想过滤(去除)数据,我们可以选择使用fillna()方法填充NaN,这里,作者使用数值'0'替代NaN,来填充DataFrame。

>>> data.fillna(0)
 age sex  phone
0 12.0 man 13865626962
1 19.0 woman   0
2 17.0  0   0
3 0.0  0   0

我们还可以通过字典来填充,以实现对不同的列填充不同的值。

>>> data.fillna({'sex':233,'phone':666})
 age sex  phone
0 12.0 man 13865626962
1 19.0 woman   666
2 17.0 233   666
3 NaN 233   666

以上这篇数据清洗--DataFrame中的空值处理方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用scrapy解析js示例
Jan 23 Python
Python求算数平方根和约数的方法汇总
Mar 09 Python
python字符串string的内置方法实例详解
May 14 Python
python3利用venv配置虚拟环境及过程中的小问题小结
Aug 01 Python
详解python 3.6 安装json 模块(simplejson)
Apr 02 Python
使用Python实现毫秒级抢单功能
Jun 06 Python
Pytorch 多维数组运算过程的索引处理方式
Dec 27 Python
Python-openCV读RGB通道图实例
Jan 17 Python
Python交互环境下打印和输入函数的实例内容
Feb 16 Python
python实现xlwt xlrd 指定条件给excel行添加颜色
Jul 14 Python
python两个list[]相加的实现方法
Sep 23 Python
详解Django中异步任务之django-celery
Nov 05 Python
根据DataFrame某一列的值来选择具体的某一行方法
Jul 03 #Python
Django框架的使用教程路由请求响应的方法
Jul 03 #Python
pandas 选择某几列的方法
Jul 03 #Python
Python中pandas dataframe删除一行或一列:drop函数详解
Jul 03 #Python
Python对数据进行插值和下采样的方法
Jul 03 #Python
pandas 将list切分后存入DataFrame中的实例
Jul 03 #Python
python之django母板页面的使用
Jul 03 #Python
You might like
PHP冒泡排序算法代码详细解读
2011/07/17 PHP
PHP正确配置mysql(apache环境)
2011/08/28 PHP
解析coreseek for sphinx的使用
2013/06/21 PHP
PHP数组的定义、初始化和数组元素的显示实现代码
2016/11/05 PHP
PHP+Ajax无刷新带进度条图片上传示例
2017/02/08 PHP
PHP守护进程化在C和PHP环境下的实现
2017/11/21 PHP
PHP实现微信退款的方法示例
2019/03/26 PHP
PHP判断函数是否被定义的方法
2019/06/21 PHP
layui数据表格自定义每页条数limit设置
2019/10/26 PHP
JavaScript中令你抓狂的魔术变量
2006/11/30 Javascript
javascript 事件查询综合 推荐收藏
2010/03/10 Javascript
在JavaScript中构建ArrayList示例代码
2014/09/17 Javascript
使用Object.defineProperty实现简单的js双向绑定
2016/04/15 Javascript
jQuery实现输入框邮箱内容自动补全与上下翻动显示效果【附demo源码下载】
2016/09/20 Javascript
微信小程序 picker 组件详解及简单实例
2017/01/10 Javascript
Vue学习之路之登录注册实例代码
2017/07/06 Javascript
vue中实现左右联动的效果
2018/06/22 Javascript
d3.js实现图形缩放平移
2019/12/19 Javascript
vue element-ui实现input输入框金额数字添加千分位
2019/12/29 Javascript
Vue中点击active并第一个默认选中功能的实现
2020/02/24 Javascript
Jquery滑动门/tab切换实现方法完整示例
2020/06/05 jQuery
python中ConfigParse模块的用法
2014/09/29 Python
用yum安装MySQLdb模块的步骤方法
2016/12/15 Python
解决python nohup linux 后台运行输出的问题
2018/05/11 Python
Django 设置多环境配置文件载入问题
2020/02/25 Python
Python 实现打印单词的菱形字符图案
2020/04/12 Python
python根据完整路径获得盘名/路径名/文件名/文件扩展名的方法
2020/04/22 Python
Python 实现集合Set的示例
2020/12/21 Python
韩国江南富人区高端时尚百货商场:Galleria(格乐丽雅)
2018/03/27 全球购物
美国台面电器和厨具品牌:KitchenAid
2019/04/12 全球购物
ANINE BING官方网站:奢华的衣橱基本款和时尚永恒的单品
2019/11/26 全球购物
遗体告别仪式答谢词
2014/01/23 职场文书
银行委托书范本
2014/04/04 职场文书
四查四看整改措施
2014/09/19 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
优化Mysql查询的示例
2022/04/26 MySQL