从凌乱到干净:轻松进行数据预处理的 8 个 Python 技巧

8 个 Python 技巧,可轻松将原始、混乱的数据转化为干净、整洁的预处理数据。

来源:KDnuggets

简介

虽然数据预处理在数据科学和机器学习工作流程中具有重要意义,但这些过程通常无法正确执行,很大程度上是因为它们被认为过于复杂、耗时或需要大量自定义代码。因此,从业者可能会推迟数据清理等重要任务,依赖从长远来看不可持续的脆弱的临时解决方案,或者对本质上可能很简单的问题过度设计解决方案。

本文介绍了 8 个 Python 技巧,可以轻松地将原始、混乱的数据转换为干净、整洁的预处理数据。

在查看具体技巧和随附的代码示例之前,以下序言代码设置必要的库并定义一个玩具数据集来说明每个技巧:

将 pandas 导入为 pd

将 numpy 导入为 np

# 一个很小的、故意弄乱的数据集

df = pd.DataFrame({

“用户名”:[“爱丽丝”,“鲍勃”,“鲍勃”,“爱丽丝”,无],

“年龄”:[“25”,“30”,“?”,“120”,“28”],

“收入$”:[“50000”,“60000”,无,“1000000”,“55000”],

"加入日期": ["2023-01-01", "01/15/2023", "不是日期", 无, "2023-02-01"],“城市”:[“纽约”,“纽约”,“纽约”,“纽约”,“纽约”],})1. 立即标准化列名这是一个非常有用的单行风格技巧:在一行代码中,它规范了数据集中所有列的名称。具体细节取决于您想要如何规范化属性名称,但以下示例演示了如何用下划线符号替换空格并将所有内容小写,从而确保一致、标准化的命名约定。这对于防止下游任务中出现烦人的错误或修复可能的拼写错误非常重要。无需逐列迭代!df.columns = df.columns.str.strip().str.lower().str.replace(" ", "_")2. 大规模去除字符串中的空格df = df.apply(lambda s: s.str.strip() if s.dtype == "object" else s)3. 安全地转换数字列总结