如何使用 Python 清理凌乱的 CSV 文件:初学者指南

了解如何使用 pandas 处理缺失值、重复行、混乱文本、错误数据类型、混合日期格式、无效电子邮件和货币值来清理 CSV 文件。

来源:KDnuggets

简介

当您刚刚开始数据分析时,您首先要学习的事情之一就是如何清理数据集。这听起来很基础,但却是您将一次又一次使用的最重要的技能之一。

有趣的是,即使作为专业人士,您仍然会花费大量时间清理数据,而不是分析数据、构建模型或评估结果。为什么?因为原始数据很少是干净的。它可能包含缺失值、错误格式、重复行、混乱的字符串、无效日期、奇怪的类别和嘈杂的条目。

在您了解数据告诉您什么之前,您需要解决这些问题。

在本指南中,我们将使用 Python 和 pandas 清理杂乱的客户 CSV 文件。我们将从加载和检查数据开始,然后清理列名、处理缺失值、删除重复项、标准化文本、转换数据类型、验证电子邮件并保存最终的清理 CSV 文件。

1. 加载 CSV

第一步是将杂乱的数据集加载到 pandas 中。

将 pandas 导入为 pd

df = pd.read_csv("messy_customers.csv", keep_default_na=False)

df

我们使用的客户 CSV 文件存在常见的数据质量问题。正如您已经看到的,该文件包含混乱的列名、不一致的文本格式、混合的日期格式、缺失值、重复的行以及存储为文本的数字。

2. 清洁前检查

在开始清理之前,我们需要了解数据集中的实际内容。

print("形状:", df.shape)

print("\n列名:")

打印(df.columns.tolist())print("\n数据类型:")打印(df.dtypes)print("\n精确重复的行:", df.duplicate().sum())输出:这使我们可以在进行任何更改之前快速概览数据集。我们可以看到数据集有10行8列。列名很混乱,因为其中一些有多余的空格和大小写不一致。我们还可以看到每一列都存储为一个对象,这通常意味着 pandas 将它们视为文本。3. 清理列名最后的想法