数据清理是修改数据以删除或纠正信息,为分析做准备的过程。实践者普遍认为80%的分析时间都花在数据清理阶段。但是为什么呢?
在收集数据时,通常有各种各样的挑战需要解决。数据集可能包含缺失的点或离群值,或者需要与其他数据集合并。工程和科学数据通常有特定的需求,例如管理高频时间戳、信号处理和数据标记。您需要决定如何处理这些数据清理任务。
这听起来可能很痛苦,但其实并非如此。MATLAB®提供了许多应用程序和功能的数据清理任务,使这一阶段更快和更多的信息,以便您可以专注于您的分析和问题解决。例如,使用MATLAB:
- 使用Live Editor任务同步、平滑、删除或填充缺失的数据和离群值,以交互式地试验数据清理方法(见下文)。
- 调用函数,例如
smoothdata
和fillmissing
,有许多管理数据的选项和方便的功能提示。 - 快速执行特定领域的数据清理需求,例如,Signal Analyzer、Signal label和图片标志应用程序,它也将生成代码来自动化这些步骤。
数据争吵
也许你听说过“数据争论”或“数据清理”,指的是准备分析所需的不同数据清理步骤。以天气传感器系统的数据为例。传感器可能会暂时失效,在此期间留下缺失的数据点或异常值。不同的传感器通常以不同的时间步长进行记录,因此数据集必须是相同的同步和插值时代不匹配的地方。这只是两个例子,但在您考虑数据“干净”之前,可能还有更多的步骤和决策。
常见的数据清理任务包括:
- 填充或删除缺失的数据和异常值
- 平滑,消除长期趋势
- 识别异常值、变化点和极值
- 连接多个数据集
- 基于时间的数据清理,包括排序、移位和同步
- 对数据进行分组和分类
数学算法被用来解决这些挑战。例如,您可以用最近邻或线性插值来填充缺失的数据点。活动编辑器任务和功能,如fillmissing
和smoothdata
将帮助您探索常见的数据清理方法,并立即看到结果,以更快地做出这些决定。
机器与深度学习
在创建预测模型时,数据清理中通常会有额外的步骤。考虑图像中的目标检测。在开发分类算法之前,可能需要对图像中的物体进行标记。然后,数据必须根据算法(机器学习、深度学习)的类型进行适当的组织,可能使用更少的数据点,或表示对象的“特征”。即使在训练模型之后,您也经常评估特征的重要性,可能会使用不同的数据清理步骤重复该过程,以改进分类。
一般来说,数据通过这样的管道:
- 数据标签
- 通用数据清洗
- 特征选择
- 训练和测试预测模型
- 对前面的步骤进行优化和迭代
- 将模型部署到生产中
MATLAB在整个工作流中提供了应用程序和函数。你可以标签类用于图像、信号、音频和视频。