数据清理

探索流行的数据清理方法,并快速迭代以专注于分析

数据清理是修改数据以删除或纠正信息,为分析做准备的过程。实践者普遍认为80%的分析时间都花在数据清理阶段。但是为什么呢?

在收集数据时,通常有各种各样的挑战需要解决。数据集可能包含缺失的点或离群值,或者需要与其他数据集合并。工程和科学数据通常有特定的需求,例如管理高频时间戳、信号处理和数据标记。您需要决定如何处理这些数据清理任务。

这听起来可能很痛苦,但其实并非如此。MATLAB®提供了许多应用程序和功能的数据清理任务,使这一阶段更快和更多的信息,以便您可以专注于您的分析和问题解决。例如,使用MATLAB:

  • 使用Live Editor任务同步、平滑、删除或填充缺失的数据和离群值,以交互式地试验数据清理方法(见下文)。
  • 调用函数,例如smoothdatafillmissing,有许多管理数据的选项和方便的功能提示。
  • 快速执行特定领域的数据清理需求,例如,Signal Analyzer、Signal label和图片标志应用程序,它也将生成代码来自动化这些步骤。

在MATLAB中使用Live Editor任务来探索平滑数据的方法。

数据争吵

也许你听说过“数据争论”或“数据清理”,指的是准备分析所需的不同数据清理步骤。以天气传感器系统的数据为例。传感器可能会暂时失效,在此期间留下缺失的数据点或异常值。不同的传感器通常以不同的时间步长进行记录,因此数据集必须是相同的同步和插值时代不匹配的地方。这只是两个例子,但在您考虑数据“干净”之前,可能还有更多的步骤和决策。

常见的数据清理任务包括:

  • 填充或删除缺失的数据和异常值
  • 平滑,消除长期趋势
  • 识别异常值、变化点和极值
  • 连接多个数据集
  • 基于时间的数据清理,包括排序、移位和同步
  • 对数据进行分组和分类

数学算法被用来解决这些挑战。例如,您可以用最近邻或线性插值来填充缺失的数据点。活动编辑器任务和功能,如fillmissingsmoothdata将帮助您探索常见的数据清理方法,并立即看到结果,以更快地做出这些决定。

使用MATLAB的数据清理函数提示清理和探索选项(例如,fillmissing函数提示,探索常见的填充方法,如线性插值)。有关丢失数据、平滑数据和处理离群数据的更多信息,请参阅下面的示例。

机器与深度学习

在创建预测模型时,数据清理中通常会有额外的步骤。考虑图像中的目标检测。在开发分类算法之前,可能需要对图像中的物体进行标记。然后,数据必须根据算法(机器学习、深度学习)的类型进行适当的组织,可能使用更少的数据点,或表示对象的“特征”。即使在训练模型之后,您也经常评估特征的重要性,可能会使用不同的数据清理步骤重复该过程,以改进分类。

一般来说,数据通过这样的管道:

  • 数据标签
  • 通用数据清洗
  • 特征选择
  • 训练和测试预测模型
  • 对前面的步骤进行优化和迭代
  • 将模型部署到生产中

MATLAB在整个工作流中提供了应用程序和函数。你可以标签类用于图像、信号、音频和视频。

使用图片标志应用程序选择并标记帧中的对象,并自动标记集合中的其余帧。

根据您的域、数据类型和应用程序,通常有更具体的数据清理需求。例如,统计和机器学习工具箱™信号处理工具箱™预见性维护工具箱™文本分析工具箱™计算机视觉工具箱™,音频工具箱™所有这些都包括特定于数据清理和处理这些格式和应用程序的功能和应用程序。

有关更多信息,请参见下面的参考资料。

参见:数据科学机器学习深度学习特征选择特征提取图像处理信号处理自然语言处理文本分析