本章概要

1、去重
2、缺失值处理
3、清洗字符型数据的空格
4、字段抽取

去重

  • 把数据结构中,行相同的数据只保留一行

  • 函数语法:

    • drop_duplicates()
#导入pandas包中的read_csv函数
from pandas import read_csv
df=read_csv('路径')#找出行重复的位置
dIndex=df.duplicated()#也可根据某些列,找出重复的位置
dIndex=df.duplicated('age')
dIndex=df.duplicated(['age','name'])#根据返回值,把重复数据提取出来
df[dIndex]#默认根据所有的列,进行删除,注意这里是duplicates
newdf=df.drop.duplicates()#也可以指定莫一列,进行重复值删除
newdf=df.drop.duplicates('age')


缺失值处理

缺失数据的产生

  • 数据暂时无法获取

    • 比如未成年儿童的收入等
  • 有些数据被遗漏或错误处理了

缺失数据的处理方式

缺失数据在实际工作中,是不可避免的,本部分还是很重要的

  • 数据补齐

    • 用一定的值去填充空值,使数据完备化,如平均值填充等等
  • 删除对应缺失行

  • 不处理

如何删除缺失数据的所在行

在python中,使用dropna函数进行缺失数据的清洗

  • dropna函数作用:去除数据结构中值为空的数据

  • dropna函数语法:dropna()

# 首先导入数据文件,输出df变量
from pandas import read_csv
df=read_csv('路径')

在pandas的数据框中,缺失值用NaN来标注


# 把之前数据为空的,换成a,b,可以把a、b指定为NaN值,作用是可以把不不要的数据替换成缺失值,然后处理,使用的是read的na_values函数
df=read_csv('路径',na_values=['a','b'])
# 找出NaN所在的行,通过isnull方法获取数据框中某个位置的值是否为NaN值
isNA=df.isnull()

  • 如何数据框对应的位置是NaN值,那么isnull方法对应的就是布尔值True,根据这个特征,就可以使用数据框的行获取方法,获取出NaN值所在的行
#获取空值所在的行
#首先获取所有的列,只要获取到NaN了,就认为这行有NaN值了
#使用any方法,就可以实现这种选择效果
df[isNA.any(axis=1)]

#如何要特定某列的NaN值,定位后在用any的方法就可以了
df[isNA[['gender']].any(axis=1)]
  • 特别注意定位gender的字符串有两个中括号,不能是一个
#直接删除空值
newdf=df.dropna()

清洗字符型数据的空格

  • strip函数作用:清除字符型数据左右的空格

  • strip函数语法:strip()

#打开数据文件
from pandas import read_csv
df=read_csv('路径')#清除字符串左边的空格
newname=df['name'].str.lstrip()
#清除字符串右边的空格
newname=df['name'].str.rstrip()
#清除字符串左、右边的空格
newname=df['name'].str.strip()#把清洗后的数据放回原来的列
df['name']=newname

字段抽取

  • 字段抽取,是根据已知列数据的开始和结束位置,抽取出新的列

  • 字段截取函数:slice(start开始位置,stop结束位置)

    • 与数据结构的访问方式一样,开始位置是从0开始的,开始位置是大于等于,结束位置是小于,不能取等于

    • slice函数默认只能处理字符型数据,如要处理数字型数据,必须进行转化

转载于:https://www.cnblogs.com/shujufenxi/p/9054459.html

第三章 python数据规整化相关推荐

  1. 数据规整化:清理、转换、合并、重塑 《用Python进行数据分析》读书笔记第7章

    数据规整化:清理.转换.合并.重塑 第7章 合并数据集 pandas.merge可以根据一个或多个键将不同DataFrame中的行连接起来. pandas.concat可以沿着一条轴将多个对象堆叠到一 ...

  2. 【Python】merge:数据规整化:清理、转换、合并、重塑

    merge:数据规整化:清理.转换.合并.重塑 目录: 文章目录 @[toc] 一 合并数据集 1 数据库风格的DataFrame合并 2 索引上的合并 3 轴向连接 4 合并重叠数据 二 重塑和轴向 ...

  3. 类的应用python平均分_【数据科学系统学习】Python # 数据分析基本操作[四] 数据规整化和数据聚合与分组运算...

    本篇内容为整理<利用Python进行数据分析>,博主使用代码为 Python3,部分内容和书本有出入. 在前几篇中我们介绍了 NumPy.pandas.matplotlib 三个库的基本操 ...

  4. python爬虫实战之旅( 第三章:数据解析(xpath法))

    上接:第三章:数据解析(bs4法) 下接:第四章:验证码识别 1.xpath解析简介 最常用且最便捷高效的一种解析方式.通用性很好 xpath解析原理 实例化一个etree的对象,且需要将被解析的页面 ...

  5. python爬虫实战之旅( 第三章:数据解析(bs4法))

    上接:第三章:数据解析(正则法) 下接:第三章:数据解析(xpath法) 1.数据解析步骤 标签定位 提取标签,标签属性中存储的数据值 2.bs4数据解析的原理 实例化一个BeautifulSoup对 ...

  6. Python之数据规整化:清理、转换、合并、重塑

    Python之数据规整化:清理.转换.合并.重塑 1. 合并数据集 pandas.merge可根据一个或者多个不同DataFrame中的行连接起来. pandas.concat可以沿着一条轴将多个对象 ...

  7. Python入门 - 笔记 - 第三章 Python中的变量和数据类型

    第三章 Python中的变量和数据类型 -------------------------------------------------------------------------------- ...

  8. 3.4 利用Pandas进行数据清洗和数据规整化

    本文章是3.4.3.5的内容,如果想要源代码和数据可以看以下链接: https://download.csdn.net/download/Ahaha_biancheng/83338868 文章目录 3 ...

  9. C++PrimerPlus 第三章 处理数据

    C++PrimerPlus 第三章 处理数据 3.1 简单变量 3.1.1 变量名 3.1.2 整型 3.1.3 整型short.int.long和long long 3.1.3.1 运算符sizeo ...

最新文章

  1. 双目立体匹配算法:Patch Match Stereo实用详解教程
  2. return true Java_[Java教程]js中return,return true,return false的用法及区别
  3. 2018微信年度数据报告:00后最爱表情捂脸哭 80后呲牙笑
  4. 分布式思想和rpc解决方案介绍
  5. win10改计算机用户名,win10系统修改本地账号用户名的操作方法
  6. 计算机科学技术的教育应用论文,浅谈计算机科学技术在计算机教学中的应用论文...
  7. Hexo博客搭建与部署
  8. linux shell 退出_dialog命令在linux系统中使用方法
  9. 中国连续纤维毡行业市场供需与战略研究报告
  10. windows server疑难杂症
  11. 《TCP/IP Sockets编程(C语言实现) (第2版)》 代码下载(链接以及文件打包)
  12. 100个MySQL 的调节和优化的提示
  13. python如何快速登记凭证_如何高效地翻凭证?
  14. yii2 错误处理
  15. EDMA - DMA QDMA
  16. centos7安装mysql客户端
  17. WDS+MDT部署系统
  18. 国内OA 安全现状初探
  19. 全面的关于OLAP数仓总结
  20. 英伟达显示器停止服务器,NVIDIA 451.67版显卡驱动发布:修复23个Bug、拯救144Hz HDMI显示器...

热门文章

  1. Oracle存储结构_文件
  2. mybatis中传入String类型参数的问题
  3. blp模型 上读下写_CreditX在线借贷欺诈检测框架BLP
  4. 客户机系统已禁用cpu_Metricbeat System process metricset系统进程监控参数详情
  5. Windows 11正式发布,所有用户均可免费升级,还支持安卓应用
  6. 【干货】连交换机的攻击、防御都不懂,还做什么网络工程师
  7. 为什么下一个十年的主战场在 Serverless?
  8. cnn识别cifar10、cifar100(pytorch)
  9. layui 隐藏工具栏打印按钮_PDF如何打印?为什么点打印没反应?
  10. python怎么自动中文版_Python实现AI自动版贪吃蛇