返回顶部
首页 > 资讯 > 后端开发 > Python >如何用Python进行数据清洗
  • 501
分享到

如何用Python进行数据清洗

2024-04-02 19:04:59 501人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍“如何用python进行数据清洗”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何用Python进行数据清洗”文章能帮助大家解决问题。 数据清洗是

这篇文章主要介绍“如何用python进行数据清洗”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何用Python进行数据清洗”文章能帮助大家解决问题。

数据清洗是数据分析的必备环节,在进行分析过程中,会有很多不符合分析要求的数据,例如重复、错误、缺失、异常类数据。

01 重复值处理

数据录入过程、数据整合过程都可能会产生重复数据,直接删除是重复数据处理的主要方法。pandas提供查看、处理重复数据的方法duplicated和drop_duplicates。以如下数据为例:

>sample = pd.DataFrame({'id':[1,1,1,3,4,5],

                       'name':['Bob','Bob','Mark','Miki','Sully','Rose'],

                       'score':[99,99,87,77,77,np.nan],

                       'group':[1,1,1,2,1,2],})

>sample

group  id   name  score

0      1   1    Bob   99.0

1      1   1    Bob   99.0

2      1   1   Mark   87.0

3      2   3   Miki   77.0

4      1   4  Sully   77.0

5      2   5   Rose    NaN

发现重复数据通过duplicated方法完成,如下所示,可以通过该方法查看重复的数据。

>sample[sample.duplicated()]

group  id   name  score

1      1   1    Bob   99.0

需要去重时,可drop_duplicates方法完成:

>sample.drop_duplicates()

group  id   name  score

0      1   1    Bob   99.0

2      1   1   Mark   87.0

3      2   3   Miki   77.0

4      1   4  Sully   77.0

5      2   5   Rose    NaN

drop_duplicates方法还可以按照某列去重,例如去除id列重复的所有记录:

>sample.drop_duplicates('id')

group  id   name  score

0      1   1    Bob   99.0

3      2   3   Miki   77.0

4      1   4  Sully   77.0

5      2   5   Rose    NaN

02 缺失值处理

缺失值是数据清洗中比较常见的问题,缺失值一般由NA表示,在处理缺失值时要遵循一定的原则。

首先,需要根据业务理解处理缺失值,弄清楚缺失值产生的原因是故意缺失还是随机缺失,再通过一些业务经验进行填补。一般来说当缺失值少于20%时,连续变量可以使用均值或中位数填补;分类变量不需要填补,单算一类即可,或者也可以用众数填补分类变量。

当缺失值处于20%-80%之间时,填补方法同上。另外每个有缺失值的变量可以生成一个指示哑变量,参与后续的建模。当缺失值多于80%时,每个有缺失值的变量生成一个指示哑变量,参与后续的建模,不使用原始变量。

在下图中展示了中位数填补缺失值和缺失值指示变量的生成过程。

Pandas提供了fillna方法用于替换缺失值数据,其功能类似于之前的replace方法,例如对于如下数据:

> sample

    group  id   name  score

0    1.0  1.0    Bob   99.0

1    1.0  1.0    Bob    NaN

2    NaN  1.0   Mark   87.0

3    2.0  3.0   Miki   77.0

4    1.0  4.0  Sully   77.0

5    NaN  NaN    NaN    NaN

分步骤进行缺失值的查看和填补如下:

1. 查看缺失情况

在进行数据分析前,一般需要了解数据的缺失情况,在Python中可以构造一个lambda函数来查看缺失值,该lambda函数中,sum(col.isnull())表示当前列有多少缺失,col.size表示当前列总共多少行数据:

>sample.apply(lambda col:sum(col.isnull())/col.size)

group    0.333333

id       0.166667

name     0.166667

score    0.333333

dtype: float64

2. 以指定值填补

pandas数据框提供了fillna方法完成对缺失值的填补,例如对sample表的列score填补缺失值,填补方法为均值:

>sample.score.fillna(sample.score.mean())

0    99.0

1    85.0

2    87.0

3    77.0

4    77.0

5    85.0

Name: score, dtype: float64

当然还可以以分位数等方法进行填补:

>sample.score.fillna(sample.score.median())

0    99.0

1    82.0

2    87.0

3    77.0

4    77.0

5    82.0

Name: score, dtype: float64

3. 缺失值指示变量

pandas数据框对象可以直接调用方法isnull产生缺失值指示变量,例如产生score变量的缺失值指示变量:

>sample.score.isnull()

0    False

1     True

2    False

3    False

4    False

5     True

Name: score, dtype: bool

若想转换为数值0,1型指示变量,可以使用apply方法,int表示将该列替换为int类型。

>sample.score.isnull().apply(int)

0    0

1    1

2    0

3    0

4    0

5    1

Name: score, dtype: int64

关于“如何用Python进行数据清洗”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网Python频道,小编每天都会为大家更新不同的知识点。

--结束END--

本文标题: 如何用Python进行数据清洗

本文链接: https://lsjlt.com/news/94022.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何用Python进行数据清洗
    这篇文章主要介绍“如何用Python进行数据清洗”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何用Python进行数据清洗”文章能帮助大家解决问题。 数据清洗是...
    99+
    2024-04-02
  • 怎么使用Python进行数据清洗
    这篇文章主要讲解了“怎么使用Python进行数据清洗”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用Python进行数据清洗”吧!缺失值当数据集中包含缺失数据时,在填充之前可以先进行一...
    99+
    2023-07-06
  • 如何在Python中进行数据清洗和处理
    如何在Python中进行数据清洗和处理数据清洗和处理是数据分析和挖掘过程中非常重要的一步。清洗和处理数据可以帮助我们发现数据中的问题、缺失或异常,并且为后续的数据分析和建模提供准备。本文将介绍如何使用Python进行数据清洗和处理,并提供具...
    99+
    2023-10-22
    Python编程(Python programming) 数据清洗(Data Cleaning) 数据处理(Data P
  • 详解Python如何利用Pandas与NumPy进行数据清洗
    目录准备工作DataFrame 列的删除DataFrame 索引更改DataFrame 数据字段整理str 方法与 NumPy 结合清理列apply 函数清理整个数据集DataFra...
    99+
    2024-04-02
  • python如何清洗数据
    在Python中,可以使用各种库和工具来清洗数据。下面是一些常用的方法:1. 数据去重:使用pandas库的`drop_d...
    99+
    2023-09-12
    python
  • 利用Python进行数据清洗的操作指南
    目录缺失值异常值数据不一致无效数据重复数据数据泄漏问题你一定听说过这句著名的数据科学名言: 在数据科学项目中, 80% 的时间是在做数据处理。 如果你没有听过,那么请记住:数据清洗是...
    99+
    2024-04-02
  • 怎么在Python中使用Pandas进行数据清洗
    怎么在Python中使用Pandas进行数据清洗?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。python的五大特点是什么python的五大特点:1.简单易学,...
    99+
    2023-06-14
  • 使用Python进行数据清洗的完整指南
    你一定听说过这句著名的数据科学名言:在数据科学项目中, 80% 的时间是在做数据处理。如果你没有听过,那么请记住:数据清洗是数据科学工作流程的基础。 机器学习模型会根据你提供的数据执行,混乱的数据会导致性能下降甚至错误的结果,而干净的数据是...
    99+
    2023-05-14
    Python 数据集 数据清洗
  • Python怎么利用Pandas与NumPy进行数据清洗
    本文小编为大家详细介绍“Python怎么利用Pandas与NumPy进行数据清洗”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python怎么利用Pandas与NumPy进行数据清洗”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一...
    99+
    2023-06-30
  • Python如何实现数据清洗
    小编给大家分享一下Python如何实现数据清洗,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!数据清洗小工具箱在下面的代码片段中,数据清洗代码被封装在了一些函数中,代码的目的十分直观。你可以直接使用这些代码,无需将它们嵌入到...
    99+
    2023-06-28
  • 利用pandas进行数据清洗的方法
    目录1、完整性1.1 缺失值1.2 空行2、全面性列数据的单位不统一3、合理性 非ASCII字符4、唯一性4.1 一列有多个参数4.2 重复数据我们有下面的一个数据,利用其...
    99+
    2024-04-02
  • 如何用python清洗文件中的数据
    目录简单版使用filter读取utf-8带bom的文件多文件清洗清洗数据同时记录订单号并排序清洗sql文件,将数据表名放入excel中总结简单版 直接打开日志文件,往另外一个文件中按照要过滤的要求进行过滤 im...
    99+
    2022-06-02
    python 数据清洗
  • r语言中怎么进行数据清洗
    在R语言中进行数据清洗,可以按照以下步骤进行: 缺失值处理:使用函数is.na()判断缺失值,使用函数na.omit()删除包含...
    99+
    2024-03-06
    r语言
  • 使用Python怎么清洗数据
    今天就跟大家聊聊有关使用Python怎么清洗数据,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。下面我们用一副待清洗的扑克牌作为示例,假设它保存在代码文件相同的目录下,在 Jupyte...
    99+
    2023-06-16
  • MySQL中怎么使用LOOP循环进行数据清洗
    在MySQL中,可以使用存储过程和游标来实现循环遍历数据并进行数据清洗操作。以下是一个使用存储过程和游标进行数据清洗的示例: 创建...
    99+
    2024-04-30
    MySQL
  • PHP 中使用 Elasticsearch 进行数据清洗与聚合计算
    概要:本文将介绍如何在 PHP 中使用 Elasticsearch 进行数据清洗和聚合计算。Elasticsearch 是一个强大而灵活的分布式搜索和分析引擎,它可以帮助我们通过对数据进行索引和查询来进行数据清洗和聚合计算。本文将通过具体的...
    99+
    2023-10-21
    PHP 数据清洗 elasticsearch 聚合计算
  • 学会使用pandas进行高效的数据清洗步骤
    快速上手!使用Pandas进行数据清洗的方法 引言:随着数据的快速增长和不断积累,数据清洗成为了数据分析过程中不可忽视的一部分。而Pandas是Python中一种常用的数据分析工具库。它提供了高效且灵活的数据结构,使得数据清洗变...
    99+
    2024-01-24
    快速上手
  • 如何优化数据库的数据清洗
    数据清洗是数据库管理中非常重要的一环,可以通过以下几种方法来优化数据库的数据清洗: 使用数据规范化:将数据转化为统一的格式,包括日期、时间、货币、单位等,可以减少数据冗余和提高数据一致性。 建立数据清洗规则:制定数据清洗规则,包括数...
    99+
    2024-07-03
    数据库
  • Python怎么实现数据清洗
    本文小编为大家详细介绍“Python怎么实现数据清洗”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python怎么实现数据清洗”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。这里数据清洗需要用到的库是pandas...
    99+
    2023-07-06
  • 用Python实现网易云音乐的数据进行数据清洗和可视化分析
    目录Python实现对网易云音乐的数据进行一个数据清洗和可视化分析对音乐数据进行数据清洗与可视化分析对音乐数据进行数据清洗与可视化分析歌词文本分析总结Python实现对网易云音乐的数据进行一个数据清洗和可视化分析 对...
    99+
    2022-06-02
    Python 数据清洗 数据可视化分析
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作