我们生活在大数据时代。我们周围不断有海量的数据在流动。似乎这些数据流还会不断增加。为了不被淹没,你应该知道如何正确地处理数据、分析数据并从中得出正确的结论。Python 就是最好的工具之一!
收集、存储和传输数据变得非常容易。此外,越来越多的企业意识到数据的价值。原始数据可以通过改进流程、更好的预测、预测性维护、客户流失预测等方式转化为商业价值。此外,大数据解决方案可以实现 实时数据处理 ,从而增强客户体验并降低运营成本。
然而,从原始数据中创造价值的过程面临诸多挑战。我们不能只是收集数据并按原样使用。数据通常需要经过大量处理才能成为有价值的资产。
在本文中,我们将解释为什么数据处理是数据科学的基本部分,以及 Python 如何使数据处理更容易。
为什么数据处理很重要?
在开始讨论数据处理的重要性之前,让我们先定义三个术语:
- 数据处理 是指收集、转换(即清理或将数据置于可用状态)和分类数据的整个过程。
- 原始数据 是从各种来源收集的原始状态的数据。它通常不是最适合数据分析或建模的格式。
- 干净数据 是处理原始数据后获得的数据,也就是说,这些数据已经可以进行分析。这些数据已被转换成可用的格式;不正确、不一致或缺失的数据已(尽可能地)被纠正或删除。
我们需要对原始数据进行数据处理操作的原因有很多。例如,数据集中可能存在缺失值。假设我们有一个数据集,其中包含银行客户的个人信息,其中一个属性是客户年龄。如果我们正在进行涉及客户年龄的分析,那么不知道某些客户的年龄将对我们的结果产生负面影响。因此,需要处理这些数据以删除缺失值。
以下数据集包含需要进行一些处理的原始数据。让我们尝试确定需要进行哪种处理。
客户ID | 客户年龄 | 城市 | 开始日期 | 预估工资 | 职业 |
---|---|---|---|---|---|
101 | 三十四 | 德克萨斯州休斯顿 | 2018-08-11 | 65,000美元 | 会计 |
102 | 二十七 | 加利福尼亚州圣何塞 | 2017-08-24 | 7万美元 | 现场质量 |
103 |
|
德克萨斯州达拉斯 | 2020/04/16 | 58,500 美元 | 人力资源 |
104 | 41 | 佛罗里达州迈阿密 | 2021-02-11 | 49,500 美元 | 会计 |
105 | 二十五 | 加利福尼亚州圣克拉拉 | 2020/09/01 | 62,000 美元 | 现场质量 |
106 | 二十九 | 佐治亚州亚特兰大 | 2021-10-20 | 54,500 美元 | 工程 |
-
该
customer_age
列具有缺失值,表示为 <NA> . -
中的日期
start_date
格式不同;格式需要标准化。 -
该列中的一些文本
profession
是大写的,而有些则不是。在这种情况下,计算机认为“Accounting”和“accounting”是不同的。基于此列的任何数据分析都可能是不准确的。 -
该
estimated_salary
列不是数字格式。它以文本形式存储,这意味着 65,000 美元不代表任何数量。 -
该
city
列包含城市和州信息。最好将城市和州数据放在不同的列中。
这些只是我们在原始数据中可能遇到的一些问题。随着数据的大小和属性(即列)数量的增加,所需的数据处理量通常也会增加。
您可能会问,为什么不以可用的格式存储原始数据,这样我们就不必处理数据了。如果能够按原样使用原始数据,那就太好了。然而,现实生活中的数据集通常并非如此。主要原因是:
- 用户错误/输入不正确: 输入值的人可能犯了一个错误。
- 缺少输入 :在某些情况下,客户不提供信息。
- 软件相关问题: 提取、转换、加载和传输原始数据的处理过程中出现的问题可能会产生“脏”数据。
无论问题的原因是什么,我们都需要在使用数据之前清理数据。
回到我们的原始客户数据集,以下是原始数据集的“清理”版本:
客户ID | 客户年龄 | 城市 | 状态 | 开始日期 | 预估工资 | 职业 |
---|---|---|---|---|---|---|
101 | 三十四 | 休斯顿 | 德克萨斯州 | 2018-08-11 | 65000 | 会计 |
102 | 二十七 | 圣荷西 | 那 | 2017-08-24 | 70000 | 现场质量 |
104 | 41 | 迈阿密 | FL | 2021-02-11 | 49500 | 会计 |
105 | 二十五 | 圣克莱尔 | 那 | 2020-09-01 | 62000 | 现场质量 |
106 | 二十九 | 亚特兰大 | 遗传算法 | 2021-10-20 | 54500 | 工程 |
值得注意的是,我们选择如何处理缺失值取决于任务和情况。如果年龄对我们的分析至关重要,那么删除没有年龄值的行是一个可行的选择。在某些情况下,我们可能会选择用平均值替换缺失的年龄值。
谁应该学习数据处理?
数据分析师 和 数据科学家 来说是一项非常有价值的技能 。如果你正在处理数据,迟早你会遇到一些需要处理和清理的数据。
在理想情况下,数据科学家会处理干净且经过处理的数据。他们的工作是探索数据并提出准确的模型。然而,可用的数据并不总是唾手可得。他们可能必须先处理和清理原始数据,然后再进行任何分析和建模工作。
这就是为什么大多数职位空缺都指定数据处理作为一项必备技能的原因。无论你是数据工程师还是数据科学家,数据处理都值得学习。
Python中的数据处理
我想我们都同意,数据处理是数据科学生态系统中必不可少的操作。事实上,典型的工作流程中,大量的时间都花在了数据处理上。
Python 拥有非常强大的库,可以简化和加快数据处理。例如,我用来处理上述原始客户数据集的库是 pandas ,它是 Python 最受欢迎的数据分析和操作库之一。
由于它是一个 Python 库,因此 pandas 具有高度直观的语法,并且非常容易学习。例如,我用于标准化职业列的代码是:
customer["profession"] = customer["profession"].str.lower()
这只是将职业列中的所有文本数据转换为小写,而不管它最初是如何存储的。我做的其他操作也相当简单。
数据处理的另一个重要部分是处理不同的文件格式。原始数据可能以各种格式存储,如 Excel、CSV 或 JSON。我们需要能够读取存储在这些文件中的数据,并以这些格式写入数据。
选择的文件格式取决于应用程序。即使数据相同,读取和保存的方式也会根据文件格式而变化。我们应该熟悉常用的文件格式。
Python 还有其他几个用于数据清理的库。查看 最有用的 Python 数据清理模块 和我们 用于数据科学的 15 大库 以获取更多信息。
了解有关使用 Python 进行数据处理的更多信息
考虑到现实生活中的数据集几乎总是以需要处理和清理的格式出现,数据处理是数据科学的必备技能。获得这项技能的最佳方式是参加在线交互式 Python 课程,例如我们的“使用 Python 进行数据处理” 课程。它涵盖了从处理字符串到使用 Python 管理不同文件类型和目录的所有内容。这个交互式课程不仅会为您提供必要的知识,还会为您提供在实践中测试它的机会。
本课程适合那些了解 Python 基础知识的人。如果您是初学者,我建议您从 Python 基础知识 课程开始。它将帮助您开始编程并学习基础 Python。
您是否对学习如何使用 Python 提高数据处理效率感到兴奋?尝试我们的“使用 处理” 课程。掌握数据处理,您将从分析中获得更多收益!
发表评论 取消回复