数据挖掘中的预处理?

数据挖掘 数据挖掘 数据集 数据清理 预处理
2022-02-19 07:13:38

我还是数据挖掘的新手,但我真的很想(并且需要)学习它。我知道在我可以在像 WEKA 这样的软件中实际处理我的数据之前,我需要进行一些过滤,比如清理数据、集成、转换等,以真正从任何类型的重复、缺失值、噪声等中清除数据。但我只在理论上知道所有这些。

我现在遇到的问题是我有一组非常大的数据,在进入处理部分之前我需要先过滤这些数据。但我不知道从哪里开始。仅供参考,我的数据集非常大,通常的电子表格程序(如 Ms Excel、Libre Office、WPS 等)无法打开它。我必须使用 Linux 终端和命令来计算行数、列数等。

在预处理开始时我该怎么做?如何“清理”我的数据?我一直在考虑使用 Linux 命令来完成所有这些工作,但我也想知道真正的数据科学家如何清理他们的数据。他们是手动完成这些,还是已经有某种软件来帮助他们?因为说真的,我不知道从哪里开始或从哪里开始。我在互联网上找到的每一个参考资料都只是理论上的解释。我需要一些更实用的东西来帮助我理解。

我该如何处理我的数据集?请帮忙?

3个回答

预处理将取决于您的数据是什么样的:文本?数字?如果在您想要进行的任何分析中,数据不允许有重复项,则必须将其过滤掉。如果没有,他们会留下来,等等。如果你已经在理论上确切地知道你想做什么并且只需要找到一些软件,python pandas 非常好。加载数据,清理数据,分组,执行基本分析。

我认为不同的人可能有不同的方法,这取决于他们的背景。linux 工具集经常被忽略,诸如awk, sed, grep, cut, paste,等等之类的东西可以以许多复杂的方式组合起来sortuniq并且非常强大和可扩展,但它们并不适合所有人。

我怀疑很多人使用他们已经熟悉或用于数据科学工作编程语言RPython…………………………………………………………………………………………………… 其他人可能会使用 SAS 等商业产品。MatlabMathematicaC++Julia

当然是 Python 及其相关库,而 R 拥有庞大的用户群,是受欢迎的选择。最终,您可能需要查看几个选项并决定哪一个最适合您和您的技能。

正如您已经提到的,WEKA它提供了一个易于访问的用户界面,可以快速开始,并且肯定是开始早期实验和快速产生结果的好地方。它有一系列过滤器,可用于预处理可能对您有用的数据。它通过其提供了更多功能API,可通过以下方式获得Java,这使您能够在构建自己的问题解决方案时更具创造性,但您需要学习在Java.

另一种更折衷的方法是,您从许多工具箱中汲取灵感,例如RPythonWEKA等,并使用您自己的框架融合它们,这些框架是用您最喜欢的编程语言编写的C++Apache Mahout

您需要应用哪些数据清理操作、缺失值替换、添加噪声、重新采样等,将在很大程度上取决于数据的具体性质及其应用程序。

您可以选择 Apache spark,它具有适用于 JAVA、Python、R 等语言的 API。Spark 非常擅长对大规模数据执行操作。它有很多内置函数可以清理,数据存储在 spark 数据帧中。机器学习算法也在spark中实现 这里是相关资料