Python数据预处理概述

2019-04-10 09:59:56 浏览数 (1)

Python数据预处理概述

对于数据分析而言,数据是显而易见的核心。但是并不是所有的数据都是有用的,大多数数据参差不齐,层次概念不清淅,数量级不同,这会给后期的数据分析和数据挖掘带来很大的麻烦,所以有必要进行数据预处理。

数据预处理是指在对数据进行数据挖掘之前,先对原始数据进行必要的清洗、集成、转换、离散和规约等一系列的处理工作,已达到挖掘算法进行知识获取研究所要求的最低规范和标准。通常数据预处理包括:数据清洗、数据集成、数据变换、数据规约。

一:数据清洗

数据清洗是填充缺失数据、消除噪声数据等操作,主要通过分析“脏数据”的产生原因和存在形式,利用现有的数据挖掘手段和方法去清洗“脏数据”,将“脏数据”转化为满足数据质量要求和应用要求的数据,从而提高数据集的质量,满足现阶段数据分析的需求。

1.数据质量 数据质量主要有10个维度:

  • 数据规范:对数据标准、数据模型、业务规则、元数据和参考数据进行有关存在性、完整性、质量和归档的测量标准;
  • 数据完整性准则:对数据进行有关存在性、有效性、结构、内容和其他基本数据特征的测量标准;
  • 重复:对存在于系统内或系统间的特定字段、记录或数据集意外重复的测量标准;
  • 准确性:对数据内容正确性进行测量的标准;
  • 一致性和同步:对各种不同的数据仓库、应用和系统中存储或使用的信息等价程度的测量,以及使数据等价处理流程的测量标准;
  • 及时性和可用性:在预期时段内对特定应用的及时程度和可用程度的测量标准;
  • 易用性和可维护性:对数据可被访问和使用的程度,以及数据能被更新、维护和管理程度的测量标准;
  • 数据覆盖:相对于数据总体和全体相关的对象数据的可用性和全面性的测量标准;
  • 表达质量:如何进行有效信息表达以及如何从用户中收集信息的测量标准;
  • 可理解性、相关性和可信度:数据质量中可理解性和数据质量中执行度的测量标准,以及对业务所需数据的重要性、实用性及相关性的测量标准。

数据质量问题

数据值质量问题的分类:

  • 数据录入/更新
  • 测量
  • 简化
  • 数据集成

2.数据清洗的定义 数据清洗又叫数据清理或数据净化,主要用于数据仓库、数据挖掘和全面数据质量管理三个方面。

现今数据清晰研究主要涉及以下几方面:

  • Web领域的数据清洗研究:搜索引擎
  • 特殊领域的数据清洗研究:金融、保险中的脏数据(错误数据、不一致数据、重复数据以及业务逻辑错误的数据)
  • 数字化文献服务领域的数据清洗研究
  • 射频识别领域的数据清洗研究

3.数据清洗的原理 通过分析脏数据的产生原因及存在形式,对数据的过程进行考察、分析,并总结出一些方法(数理统计、数据挖掘或预定义规则),将脏数据转化为满足数据质量要求的数据。

4.数据清洗的基本方法

  • 缺失数据处理:平均值、中间值、最大值、最小值或更为复杂的概率统计函数值填充空缺法。
  • 相似重复数据检测:基于字段(编辑距离算法、树编辑距离算法、TI Similarity相似匹配算法、Cosine相似度函数算法)与基于记录(排序邻居算法、优先队列算法、Canopy聚类算法)的重复检测。
  • 异常数据处理:异常数据的探测主要有基于统计学、基于距离和基于偏离3类方法。
  • 逻辑错误检测:主要有统计法、聚类方法和关联规则方法。
  • 不一致数据:常用的消除数据不一致的方法有排序、融合和基于规则三种方法。

5.数据清洗模型简介

  • Trillium的过程模型:用于专业的金融、保险等行业。
  • AJAX的过程模型:主要用于数据挖掘方面。
  • Kimball的过程模型。

二:数据集成

数据集成是指将多个数据源中的数据合并并存放到一个一直的数据存储(如数据仓库)中,这些数据源可能包括多个数据库、数据立方体和一般文件。

三:数据变换

数据变换是指不同来源所得到的数据可能导致不一致,所以需要及你选哪个数据变换,构成一个适合数据挖掘的描述形式。 数据转换包含的内容:

  • 属性的数据类型转化
  • 属性构造
  • 数据离散化
  • 数据标准化

四:数据规约

对海量数据进行复杂的数据分析和挖掘将需要很长的时间,使得这种分析不具有可操作性。海量数据规约技术可以减少数据集容量,但仍接近保持原数据的完整性。

  • 数据立方体存储多维聚集信息
  • 属性子集选择:逐步向前选择、逐步向后删除、决策树归纳
  • 维度规约:小波变换、主成分分析
  • 数值规约
  • 离散化和概念分层产生:是数据挖掘强有力的工具,允许挖掘多个抽象层的数据。

0 人点赞