数据清理是数据分析的关键部分。如果你需要用 Python 整理数据框,这些将帮助你完成工作。
Python 是数据科学的首选编程语言。它如此受欢迎的一个原因是其 丰富的库选择 。这些库提供的函数和方法可加快典型的数据科学任务。
现实生活中的数据通常很杂乱,并且不具有适合数据分析的格式。在准备好进行分析之前,您可能会花费大量时间清理和预处理数据。因此,熟悉 Python 的数据清理库至关重要。我们的“数据 科学 Python 入门” 课程提供了 Python 基础知识的出色概述,并介绍了 用于数据清理和数据框整理的基本 Python 库 .
在本文中,我们将介绍一些 Python 的数据清理库。其中一些非常常用,例如 pandas 和 NumPy。事实上,Pandas 可能是数据科学领域最受欢迎的 Python 库。我们将介绍的一些库并不那么受欢迎,但它们对于特定任务很有用。
熊猫
如果要分别显示名字和姓氏,str 访问器下的 split 函数可在一行代码中完成此任务。 df[['First_name', 'Last_name']] = df['Name'].str.split(' ', expand=True) 数据框现在的样子: 我们还可以使用 dt 访问器做一个示例。在某些情况下,需要提取日期的某个部分。例如,您可能需要将月份或星期几信息分开。我们可以轻松提取月份和星期几并将它们分配给新列。 df['month'] = df.col_a.dt.monthdf['dayofweek'] = df.col_a.dt.dayofweek 您可以在官方的良好起点上了解有关 pandas 的更多信息,因为它们包含很多示例。 NumPy。 Matplotlib Matplotlib 最出名的是作为一个数据可视化库,但它也可用于数据清理。您可以创建分布图,这有助于我们更好地理解数据。为了构建一个准确而强大的策略来处理缺失值,全面了解数据的底层结构非常重要。下图是一个直方图,它将连续变量的值范围分成离散的箱,并显示每个箱中有多少个值。它可能为数据清理提供有用的信息。在官方网站上了解有关 Matplotlib 的更多信息 missingno 库是此任务的一个非常方便的工具。它提供了有关数据框中缺失值的信息可视化。例如,您可以创建一个缺失值矩阵,显示数据框中缺失值位置的概览。然后,您将能够发现具有大量缺失值的区域。下图显示了一个缺失值矩阵。白色水平线表示缺失值。您可以轻松注意到它们的分布,这对您处理缺失值的策略来说是一个重要的见解。在这里我们可以看到第一列有很多缺失数据,第三列缺失数据更多。missingno 库还提供了热图和条形图来显示缺失值。可以使用以下命令通过 pip 安装该库: pip install missingno 在项目的 GitHub 页面 上了解有关 missingno 的更多信息。 datacleaner datacleaner 是一个与 Pandas 数据框一起使用的第三方包。它的功能也可以用 Pandas 实现,但 datacleaner 提供了一种结合了几个典型操作的简洁方法。从这个意义上说,它节省了时间和精力。 datacleaner 可以执行以下操作: 删除有缺失值的行。 用合适的值替换缺失值。 对分类变量进行编码。在该项目的 GitHub 页面 上了解有关 datacleaner 的更多信息。 Modin Modin 可以被视为 pandas 性能助推器。它分配数据和计算以加速 pandas 代码。根据 Modin 的文档,这可以将 pandas 的速度提高多达 4 倍。我最喜欢 Modin 的一点是它与 pandas 的无缝集成。它不会给 pandas 的语法增加任何不必要的复杂性。你导入 Modin,替换常规的 pandas 导入,然后就可以开始了: import modin.pandas as pd 在其官方网站上了解有关 Modin 的更多信息。 PrettyPandas PrettyPandas 扩展了 pandas DataFrame 类,因此你可以自定义数据框的显示方式。顾名思义,PrettyPandas 使数据框看起来更好。 PrettyPandas 允许你创建可直接放入报告中的表格。你可以轻松地在单元格中添加百分比和货币符号。另一个有用的功能是,列的总数和平均值可以与表格一起显示。考虑以下 pandas 数据框: 使用 pip 安装 PrettyPandas 后,我们可以导入它并使用它来自定义这个数据框。以下代码块在第一列添加百分号,在第二列和第三列添加货币符号。使用 .total() 和 .average() ,我们可以快速将汇总行添加到表。 from prettypandas import PrettyPandas( df .pipe(PrettyPandas) .as_percent(subset = 'col_a') .as_currency('USD', subset = 'col_b') .as_currency('GBP', subset = 'col_c') .total() .average()) 数据框现在的样子如下: 在其官方网站上了解有关 PrettyPandas 的更多信息。 Python 库使数据清理更容易 数据清理是一项基本的数据科学任务。 即使你设计和实现了一个最先进的模型,它也只与你提供的数据一样好。 因此,在关注模型之前,你需要确保输入数据是干净的并且采用适当的格式。 在 Python 生态系统中,有许多库可用于数据清理和准备。 这些库提供了许多函数和方法,可帮助你实现健壮而高效的数据清理过程。 这只是你应该在 2021 年学习 Python 的原因之一。当然,Python 不仅仅用于数据清理。Python 库也适用于数据科学领域的其他任务。这里有一篇文章介绍了你应该知道的 13 个顶级 Python 库。
发表评论 取消回复