day02
今天读取的是第2章节数据预处理部分,该章节主要是针对前文提及的CRISP-DM方法论中的数据理解、数据准备部分,作为数据挖掘开发人员,要结合业务实际,根据提出的问题痛点找出业务数据能表征该痛点的部分,该部分需要从数据中进行探索、解析(此处最考验从业者在该行业业务上理解以及信息化系统上的抽象理解)
探索型数据分析
分类 | 子集 | 主要内容 | 例子 |
---|---|---|---|
数据理解 | 数据描述 | 描述数据的维度、变量、元数据等基本情况 | 变量数量:例如,10个特征。 变量类型:例如,age为数值型,gender为类别型。 内存大小:例如,数据集大小为500MB。 |
数据有效性 | 检查无效值、缺失值、非典型值等数据质量问题 | 拼写错误:例如,gender字段中有"mle"而非"male"。 空值个数:例如,某字段有100个缺失值。 离群点:例如,身高为200cm。 | |
数据探索 | 通过可视化和统计方法探索数据的特征和变量间的关系 | 单变量分析:如,age的直方图分布。 双变量分析:如,height与weight的散点图。 多变量分析:如,平行坐标图查看多个变量的关系。 | |
数据准备 | 数据清洗 | 处理缺失值、离群点等数据问题,确保数据质量 | 均值填充:用均值填充缺失的数值型数据。 中位数填充:对偏态数据用中位数填充。 主成分分析(PCA):降维处理高维数据。 |
衍生属性 | 生成新的特征变量,可能提高模型的效果 | 合并稀有因子:将稀有类别合并为"其他"。 分箱:将age分为多个区间,如0-18岁、19-35岁等。 Box-Cox变换:对数据进行变换使其更接近正态分布。 |
数据业务质量问题
- 数据的业务化:数据异常也许是正常的业务场景:绝大多数我们在入手做这种业务场景数据挖掘类的任务时,往往会先和业务人员了解他们的经验法则,以及他理解的行业知识,但是这些知识无法包含全部的业务场景,但是我们可以从数据分布上进行查验,得到这些数据异常分布后再向业务人员进行核实分析,所以需要数据分析人员在数据上较真,把一些对于当前数据分析的异常主动暴露给业务专家,寻求数据上的进一步透彻理解,不要觉得繁琐,深入了解业务,是最有效的方法。
- 业务的数据化:专家经验一般从机理上都可以讲的通,也会有实际的案例进行支撑,但是经验往往都是有隐含的前提假设,也是存在一定的认知偏差,所以基于实际的数据验证和优化是必不可少的环节。因此专家经验和数据驱动应当是相辅相成,缺一不可。
- 机理演绎法:在构建数据模型之前,要把该模型的驱动因素和相关因素根据业务逻辑进行梳理,数据驱动的模型一定不要从数据出发,而是从业务出发,要利用业务上能用的一切可用的数据,哪些是有数据支撑的、哪些是系统的状态变量、哪些是驱动关系、哪些是相关关系,很多情况下是需要了解系统的动力学流程
在真实的物理场景中,存在的很多干扰项,而且普遍的物理系统基本规律也不是一程不变的,很多时候诸如以下列项,所以我们无法保证分析的数据集覆盖了所有的关键要素信息,只能保证在我们的认知范围内,在尽可能多的数据上具备较高的置信度,走通:业务背景—>数据现象—>业务解读—>专家经验、数据分析启发/结果—>数据分析发现
- 物理系统/过程:设备间的相互影响、人工操作干扰、环境因素、设备动作等
- 业务逻辑:目标对象发生变化、时长规律、外部影响、关键点缺失等
- 数据层面:测量不精准、数据结构变化、数据跳变之类
下图是介绍一个案例:根据各个省公司的历史备件销售量,预测未来3旬的备件需求量。备件需求的驱动关系图如下,其中带框的变量表示有数据支撑的,没有框的表示系统的状态变量,实线表示驱动关系,虚线表示相关性关系。