python数据分析(三)——pandas缺失值处理
系列文章目录:
python数据分析(一)——series和读取外部数据
python数据分析(二)——DataFrame
缺失值处理
- 一、数据缺失
一、数据缺失
数据缺失通常有两种情况;
一种就是空,None等,在pandas是NaN(和np.nan一样),另一种是人为赋值为0的数据
对于NaN的数值:
判断数据是否为NaN:pd.isnull(t)或者pd.notnull(t)
判断nan出现情况
In [45]: t
Out[45]: w x y z
a 0.0 1.0 2 3
b NaN NaN 6 7
c NaN NaN 10 11In [47]: pd.isnull(t)
Out[47]: w x y z
a False False False False
b True True False False
c True True False FalseIn [48]: pd.notnull(t)
Out[48]: w x y z
a True True True True
b False False True True
c False False True TrueIn [49]:t[pd.notnull(t["w"])]
Out[49]: w x y z
a 0.0 1.0 2 3
处理方式一:删除NaN所在的行列
#只要有一个nan就删掉,inplace是否将删掉之后的数组替换掉之前的数组,即原地修改:
dropna(axis=0,how=‘any’,inplace=False)
#这一行全部为nan时删掉:
dropna(axis=0,how=‘all’,inplace=False)
删除数据
In [50]: t.dropna(axis=0,how='any')
Out[50]: w x y z
a 0.0 1.0 2 3In [51]: t.dropna(axis=0,how='all')
Out[51]: w x y z
a 0.0 1.0 2 3
b NaN NaN 6 7
c NaN NaN 10 11In [52]:
# 原地修改
t.dropna(axis=0,how="any",inplace=True)
In [53]: t
Out[53]: w x y z
a 0.0 1.0 2 3
处理方式二:填充数据
t.fillna(t.mean()), t.fiallna(t.median()),t.fillna(0)
填充数据
In [60]: t3
Out[60]: name age tel
0 xiaohong 32 10086.0
1 xiaogang NaN 10000.0
2 xiaowang 22 NaNIn [61]: t3.fillna(0)
Out[61]: name age tel
0 xiaohong 32 10086.0
1 xiaogang 0 10000.0
2 xiaowang 22 0.0In [71]:t3 = [{"name":'xiaohong', "age":32, "tel":10010}, {"name":"xiaogang","tel":10000}, {"name":"xiaowang", "age":22}]
In [72]:t3 = pd.DataFrame(t3)In [73]: t3
Out[73]: name age tel
0 xiaohong 32.0 10010.0
1 xiaogang NaN 10000.0
2 xiaowang 22.0 NaNIn [74]: t3.mean()
Out[74]:
age 27.0
tel 10005.0
dtype: float64In [75]: t3.fillna(t3.mean())
Out[75]: name age tel
0 xiaohong 32.0 10010.0
1 xiaogang 27.0 10000.0
2 xiaowang 22.0 10005.0# 只对其中某一列操作
In [85]: t3["age"].fillna(t3["age"].mean())
Out[85]:
0 32.0
1 27.0
2 22.0
Name: age, dtype: float64
处理为0的数据:t[t==0]=np.nan
并不是每次为0的数据都需要处理,计算平均值等情况,nan是不参与计算,但是0会
python数据分析(三)——pandas缺失值处理相关推荐
- python常用命令汇总-python数据分析之pandas常用命令整理
原标题:python数据分析之pandas常用命令整理 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的.Pandas 纳入了大量库和一些标准的数据模型 ,提供了高效地 ...
- python 数据分析day4 Pandas 之 DataFrame
DataFrame 一. 创建DataFrame 1. 二维数组创建 2. 字典创建 3. JSON创建 4. 读取Excel或CSV文件创建 5. 读数据库(MySQL)创建 二. 常用属性 三. ...
- Python数据分析之Pandas库
Python数据分析之Pandas库 一.Pandas简介 二.Pandas库的安装 三.Pandas的数据结构 四.Series 和 DataFrame 数据结构的使用 五.其他可以参考的网站 一. ...
- excel处置4000行数据卡_懂Excel就能轻松入门Python数据分析包pandas(三):制作成绩条...
系列文章: 经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死.后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器-- pandas 前言 很 ...
- 用python做成绩分析做表格_excel成绩表-懂Excel就能轻松入门Python数据分析包pandas(三):制作成绩条...
转发本文并私信我"python",即可获得Python资料以及各种心得(持续更新的) 经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死.后来 ...
- (转载)Python数据分析之pandas学习
转载地址:http://www.cnblogs.com/nxld/p/6058591.html Python中的pandas模块进行数据分析. 接下来pandas介绍中将学习到如下8块内容: 1.数据 ...
- Python数据分析之pandas学习
Python中的pandas模块进行数据分析. 接下来pandas介绍中将学习到如下8块内容: 1.数据结构简介:DataFrame和Series 2.数据索引index 3.利用pandas查询数据 ...
- python 数据分析核心--pandas
前言 Python作为一门数据可视化很好的语言,可以使用像matplotlib等库画出图形,处理数据主要使用pandas 这里主要讨论Pandas 初识pandas 大多数人只要提及pandas,基本 ...
- python数据分析之pandas数据选取:df[] df.loc[] df.iloc[] df.ix[] df.at[] df.iat[]
1 引言 Pandas是作为Python数据分析著名的工具包,提供了多种数据选取的方法,方便实用.本文主要介绍Pandas的几种数据选取的方法. Pandas中,数据主要保存为Dataframe和Se ...
最新文章
- Linux-鸟菜-5-目录配置-FHS
- 图形驱动程序和显卡驱动什么区别_什么是核心显卡,核心显卡和集成显卡的区别...
- Java笔记(3) - 使用Spring Cloud Zookeeper + Feign实现服务发现
- oracle---函数(trunc,nvl,nvl2)
- linux关闭内核命令,Linux内核关闭IPv6协议的方式
- www.beihua.edu.cn计划摘录
- asp还有人用吗_中药都安全吗?服用这些中药需要注意
- 江苏大学矩阵论、数理统计期末考试复习
- php 开源邮件系统,20款 Web Mail PHP开源项目
- 影视之观大秦帝国之裂变总结
- html5中加水平分割线,HTML设置水平分割线
- Linux CentOS 大数据集群的基础配置(3) CHD分布式环境搭建
- 新手演讲:走上演讲台的第一步
- 前端推荐的书籍学习(必看)
- C语言经典面试题10道(七)
- [置顶] 增强型的FLEA_Db_TableDataGateway,提供按字段名称操作的功能
- Kubeadm部署-Kubernetes-1.18.6集群
- iPad air 1 7.1.2升级IOS 11
- rtl8812驱动分析(二)
- 视频会议系统gk服务器,华为视频会议系统中的终端如何通过GK发起呼叫
热门文章
- Visiom Transformer 代码实现--ViT
- 非标自动化设备发展现状如何?
- python爬虫爬取微信_Python爬虫爬取微信小程序
- libjpeg库使用举例
- error LNK2001: 无法解析的外部符号 __imp__WSAGetLastError@0
- 短域名系统设计详解(全)
- 英特尔采用 LLVM 作为最新 C/C++ 编译器
- c语言 计算在10个学生的平均成绩,C语言:编写程序,输入10个学生的成绩数据,计算并输出平均分及低于平均分的学生的人数。...
- 微信小程序入门-音乐播放器
- svn使用openldap验证apache访问方式