百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

带你玩转数据分析-如何使用Python进行数据清洗?

itomcoil 2025-05-30 15:11 4 浏览

在上篇分享中,我们介绍了如何导入输入,如何对数据进行查看。这篇分享主要为大家介绍关于如何使用Python对Excel表格中的数据进行清洗。包括对于空值数据、大小写问题、数据格式、重复值等问题处理。

如何对空数据进行处理?

用于演示的数据如下图所示。

会看到,在语文科目下存在空值内容,那么我们先来看看获取到的数据情况。如下图所示,通过打印df的效果。看到空值是使用了NaN进行了填充判断。

在Excel中通过查找替换的方式可以实现对空值数据的处理,那么在Python中如何对数据进行处理呢?

对空数据进行删除操作

在Python中可以通过dropna函数来删除数据表中包含空值的字段内容。如下图所示。

从输出结果来看,确实在数据中包含了空值的行被删除了,打印出来的内容都是存在数据值的内容字段。

对空数据进行填充

除了对数据进行删除之外,还可以通过fillna函数操作来对空值进行填充。如下图所示

在上面代码中,我们通过df.fillna(1)操作对数据为空的字段进行了默认填充1的操作。输出结果图所示。

空格清理操作

除了空值的操作,字符中的空格也是在数据清洗中需要处理的问题,可以通过如下的操作来进行空格的处理,下面这个操作是用来处理姓名字段中的空格。

df['姓名'].map(str.strip)

大小写的转换

在Python中通过 upper()、lower()函数来进行大小写的转换。如下图所示,可以看到在地址数据中出现了很多拼音数据,并且都是以小写的内容来展示。

我们可以通过upper()函数将其转换成大写。如下图所示,当然我们也可以通过lower()函数将大写转换成小写。

修改数据格式

在Excel表格中,我们可以通过设置单元格格式来修改数据的格式,在Python中,可以通过astype函数来完成对于单元格数据格式的修改。

这里先来修改一下数学成绩。

从图中可以看到,在没有进行修改之前,数学成绩的值是int64的,而经过修改之后数学成绩值为int32了。

删除重复数据值

可以看到,在数学成绩中,存在多个95分的数据,在Excel操作中可以通过删除重复数据的操作来实现,并且默认保留的实最先出现的数据,删除掉的是后续出现的数据。

在Python中可以通过drop_duplicates()函数来删除重复数据。

可以看到,drop_duplicates函数确实删除了重复数据,并且其规则也是与Excel的删除操作一样,保留了第一次出现的数据,删除后续出现的重复数据。

当然,我们可以通过 设置keep=last参数来设置保留规则,设置之后结果与默认情况正好相反。

数据的修改与替换

在上面空值数据处理的时候我们介绍了一个fillna()函数,来对空值添加默认值,这里我们来介绍一个replace函数用来实现数据的查找替换。这里我们演示将数学成绩95分替换成0分的操作。

会看到输出结果数据并没有得到替换,这是为什么呢?因为在进行数据处理的时候需要考虑到数据类型,由于这里我们的数学成绩是int64的类型,所以在进行操作替换的时候需将字符类型的数据设置成int类型,如下图所示。

总结

上面我们介绍了对于数据的基础处理,对于重复值处理、查找替换等操作。相比较与Excel操作来讲Python操作更加简单高效。下一篇分享给大家带来关于数据的预处理操作。

相关推荐

蚂蚁金服用什么技术这么厉害?(蚂蚁金服是怎么赚钱的?)

阿里妹导读:本文来自蚂蚁金服人工智能部认知计算组的基础算法团队,文章提出一整套创新算法与架构,通过对TensorFlow底层的弹性改造,解决了在线学习的弹性特征伸缩和稳定性问题,并以GroupLass...

R数据分析:逻辑斯蒂回归与泊松回归

今天将逻辑回归和泊松回归放一起给大家写写,因为它两在R中的做法都非常的相似和非常的简单,同时还有两个回归的图形化表达。什么时候用逻辑回归Logisticregression,alsoknown...

想学好Python数据分析,一定要掌握的重要模块之Statsmodels

Statsmodels是Python中一个功能强大且广泛使用的统计建模和经济计量学库。它允许用户构建各种统计模型,执行假设检验,进行预测,并对模型结果进行详细的诊断和可视化。以下是statsmodel...

Python实现概率分布,学数据统计的需要收藏

作者:Runsen二项分布包含n个相同的试验每次试验只有两个可能的结果:“成功”或“失败”。出现成功的概率p对每一次试验是相同的,失败的概率q也是如此,且p+q=1。试验是互相独立的。试验成功或失败...

60行代码实现经典论文:0.7秒搞定泊松盘采样,比Numpy快100倍

编辑整理自太极图形量子位|公众号QbitAI由随机均匀的点组成的图案,在动植物身上已经很常见了。像杨梅、草莓、荔枝、红毛丹这样的水果,表面都有颗粒或者毛发状的结构,它们随机、均匀地散布在水果表...

linux ubuntu 安装mongo教程(实践步骤)

最近需要在linux上安装mongdb由于之前没安装过。在网上搜索到很多安装方法,但有的按照步骤操作是不行的。前后共花费了半天时间找到一个可行的步骤,分享给大家,不必走弯路。如果安装过程遇到技术问题...

MongoDB 分片集群方案及其优缺点分析

一、MongoDB分片集群架构核心组件1.Mongos(路由节点)-无状态代理,客户端连接入口-负责查询路由、结果聚合-需部署多个以实现高可用2.ConfigServer(配置服务器)-...

CentOS7安装Mongodb 4.x.x(CentOS7安装yum源的方法)

1、下载安装包curl-Ohttps://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.6.tgz2、解压安装包tar-zxvfmon...

MongoDB+GridFS存储文件方案(mongodb存储在哪里)

GridFS是MongoDB的一个内置功能,它提供一组文件操作的API以利用MongoDB存储文件,GridFS的基本原理是将文件保存在两个Collection中,一个保存文件索引,一个保存文...

如何使用 GridFS 、 Node.js、Mongodb和Multer 管理文件存储?

什么是GridFs?GridFs是用于存储音频、视频或图像等大型文件的mongodb规范……它最适用于存储超过mongodb文档大小限制(16MB)的文件。此外,无论文件大小如何,当您想...

Mongodb 集群搭建方法(mongodb集群状态startup2)

#大有学问#MongoDB是一个非关系型数据库(NoSQL),提供高性能、高可用性和自动扩展的特点。在MongoDB中,可以通过搭建集群实现这些特性。MongoDB集群主要有两种类型:副本集(...

记一次生产事故:MongoDB数据分布不均的解决方案

推荐阅读:我为什么放弃MySQL,选择了MongoDB?看到这个数据你就会明白了事故集合:可以很明显可以看到我们这个集合的数据严重分布不均匀。一共有8个分片,面对这个情况我首先想到的是手动拆分数据块,...

百万级高并发mongodb集群性能数十倍提升优化实践

背景线上某集群峰值TPS超过100万/秒左右(主要为写流量,读流量很低),峰值tps几乎已经到达集群上限,同时平均时延也超过100ms,随着读写流量的进一步增加,时延抖动严重影响业务可用性。该集群采用...

MongoDB 常见问题处理(二)(mongodb数据处理)

MongoDB数据库中,删除请求数超过阈值的处理方案?数据删除发生在文档迁移过程中,MongoDB4.0以上版本均衡阈值很小,容易发生迁移,频繁的迁移数据导致delete数据较大,同时还会导致CPU负...

实战:docker搭建FastDFS文件系统并集成SpringBoot

实战:docker搭建FastDFS文件系统并集成SpringBoot前言15年的时候,那时候云存储还远远没有现在使用的这么广泛,归根结底就是成本和安全问题,记得那时候我待的公司是做建站开发的,前期用...