原文:
www.kdnuggets.com/2022/01/getting-started-cleaning-data.html
背景矢量图由 rawpixel.com 创建 - www.freepik.com
数据清理是预处理阶段的一部分,是在数据挖掘阶段开始之前必须进行的重要步骤。
1. 谷歌网络安全证书 - 快速进入网络安全职业生涯。
2. 谷歌数据分析专业证书 - 提升你的数据分析技能
3. 谷歌 IT 支持专业证书 - 支持你的组织 IT 需求
数据质量是衡量数据集适用于其特定目的的程度以及在决策中受信任的程度。它由准确性、完整性、一致性、有效性和及时性等特征组成。
为了实现数据质量,需要进行一个过程。那就是数据清理。数据清理包括基于数据类型和识别出的问题的不同技术。
总结来说,错误数据要么是正确的,要么被删除,要么被填补。
这是不需要的、无用的数据,或不适用于要解决的问题的数据。
例如,如果我们分析关于患者生活方式选择及其对 BMI 的影响的数据,他们的地址或电话号码作为变量是不相关的。然而,他们的吸烟状态或病史对于解决问题是重要且相关的。
你必须确定一条数据不重要且与问题无关。此时,你可以将其删除。否则,请进一步探索数据,寻找变量之间的相关性。
如果你仍然不确定,可以向该领域的专家或公司内的高层请教。他们可能会看到你未曾注意到的特定变量的相关性。
重复数据是数据集中重复出现的数据。这通常发生于:
-
用户可能会不小心提交相同的答案两次
-
请求被提出了两次,原因可能包括错误信息或纯粹是重复提交请求。
-
数据来自不同来源的组合
像这样的示例应该从数据中删除,因为它会影响你的分析过程。
有各种数据类型,如字符串、整数和浮点数。确保数据在正确的数据类型转换中对于你的分析阶段很重要。确保“True”或“False”答案被存储为布尔数据类型。确保患者的名字被存储为字符串数据类型。
这可以通过进行总结统计,即数据分析来轻松检查。它给你提供了数据的总体统计视图,帮助你识别缺失值、每个变量的数据类型等。
如果一些数据值无法转换为特定的数据类型,它们应该被转换为 NaN 值或其他值,表示该值不正确,需要解决。
语法错误是诸如拼写、标点或不正确值的错误。
空白字符是用于间隔的字符,具有“空”表示。如果空白字符出现在开头或结尾,应该将其移除。例如:
" hello world " => "hello world"
填充字符是仅用于填充字符串中的空白空间,以创建统一的长度,使数据集中的所有内容对齐。下面的示例将一个 3 位整数转换为 6 位整数。
123 => 000123
字符串通常最容易出错,因为它们可以以各种方式输入。你可能会说‘Hello’或者错误地输入‘Hllo’。例如,进行了一项调查以更好地了解一个城市的人口统计。如果没有下拉菜单来选择性别,数据可能会呈现如下:
Gender:
Male
F
Man
Female
Fem
MAle
解决这个问题的方式有很多,一种方法是手动将每个值映射为“男”或“女”。
dataframe['Gender:'].map({'Man': 'Male', 'Fem': 'Female', ... }]
让我们来看看你可以清理原始数据的不同方法。
将数据放在相同的标准化格式中有助于清理数据并识别数据中的错误。例如,确保所有字符串值都是小写或大写,以避免混淆,这是一个良好的开始。
确保特定列中的数值都转换为相同的单位。例如,患者的体重通常可以用磅(lbs)或千克(kg)表示。将它们统一为相同的单位可以让分析师的工作变得稍微轻松一些。
缩放数据意味着将其转换为适应特定范围,比如 0-100 或 0-1。通过缩放,我们可以更好地绘制、比较和分析数据。例如,将用户去健身房的访问次数从整数转换为百分比,显示他们在特定时间段内利用健身房的程度。
规范化是重新组织数据的过程,以确保没有重复的数据,并且数据存储在一个地方。规范化的目的是改变你的观察结果,以便它们可以被描述为正态分布。
许多人将数据标准化和数据归一化混淆,然而,它们并不相同。归一化通常将值缩放到[0,1]的范围内,而标准化通常将数据缩放为均值为 0、标准差为 1。
避免缺失值是很困难的,因此我们必须以某种方式处理它们。然而,忽略它们只会使问题变得更糟。你可以通过不同的方法来处理它们。
-
丢弃:最简单的解决方案是如果缺失值随机发生,则丢弃行或列。
-
填补:填补缺失值是基于其他观察值进行计算的。
-
你可以使用诸如均值和中位数之类的统计值。然而,这些值并不能保证是“无偏”的数据。
-
另一种方法是使用线性回归。你可以使用两个变量之间的最佳拟合线来填补缺失值。
-
在数据用于做出重要决策、进行统计分析以及向社会提供事实时,填补缺失值可能具有争议。缺失的数据有其价值并且具有信息性。例如,如果进行调查时,来自特定年龄组或宗教群体的用户拒绝回答问题。缺失值背后的原因对调查执行者来说非常重要,可以为分析师寻找相关性和结果提供有用信息。
丢弃或填补缺失值与默认值不同。标记这些值很重要,并可能允许进一步的当前和未来分析。
在预处理阶段后,包括丢弃或填补数据;重新评估数据,并确保清理过程没有违反任何规则或参数是很重要的。
传递数据或进入下一阶段时,如果没有报告数据的质量,与清理过程同样重要。有一些软件和库可以检测并报告这些变化,显示是否违反了任何规则。
报告数据中的错误可以帮助企业确定这些错误最初发生的原因,数据是否仍有用以及如何在未来避免这些错误。
你可能会坐在那里几个小时试图清理数据,直到你感到沮丧。然而,分析坏数据没有意义。权宜之计无法解决问题的根源。你必须理解面临的问题,并找出最好的解决办法。
Nisha Arya 是一名数据科学家和自由撰稿人。她特别感兴趣于提供数据科学职业建议或教程及理论知识。她还希望探索人工智能在延长人类寿命方面的不同方式。作为一个热衷于学习的人,她寻求拓宽自己的技术知识和写作技能,同时帮助指导他人。