数据挖掘(2.1)--数据预处理

简介: 数据对象(一条记录、一个实体、一个案例、一个样本等)是对一个事物或者物理对象的描述。数据对象的属性则是这个对象的性质或特征,例如一个人的肤色、眼球颜色等是这个人的属性。

一、基础知识

1.数据的基本概念

1.1基础知识

数据是数据对象(Data Objects)及其属性(Attributes)的集合。


数据对象(一条记录、一个实体、一个案例、一个样本等)是对一个事物或者物理对象的描述。


数据对象的属性则是这个对象的性质或特征,例如一个人的肤色、眼球颜色等是这个人的属性。

b44c7c80c8d3600d776e337d36f408e7_3cdd42786124471bac3193d6a6ef3a03.png

每一行为一条记录,每条记录即一个数据对象,代表一个用户的资料。而每一行的序号、男/女、收人、是否有配偶为数据对象的属性。而每一条记录的某一列即该对象属性的属性值,如:序号为一的对象“收入”属性的值为“10000”。


属性值是对一个属性所赋予的数值或符号,是属性的具体化。


1.2属性有不同类别

属性具有不同的类别,可以按照属性值的类型将属性类别分为4种:


(1)名称型属性(Nominal)。如身份证号码、眼球颜色和邮政编码等。

(2)顺序型属性(Ordinal)。如比赛排名、学分成绩和身高等。

(3)间隔型属性(Interval)。如日期间隔、摄氏和华氏温度等。

(4)比率型属性(Ratio)。如百分比和人口比例等。

一个属性属于以上4种属性的哪一种,取决于属性的属性值是否满足下列4种性质:区别性、有序性、可加性和乘除性。


名称型属性的属性值只满足区别性性质,即两个名称型属性的属性值可以判断相等或不等,但没有判断大小、加减乘除的意义。


顺序型属性的属性值除了满足区别性属性之外,也满足有序性。


间隔型属性的属性值满足区别性、有序性和可加性3种性质。


比率型属性的属性值满足以上全部4种性质。

属性除了以上分类之外,还有离散属性和连续属性之分。


离散属性只能从有限或可数的属性值集合中取值,通常可以用整数变量表示,如邮政编码、文档中的词数和身份证号码等。


二进制属性是离散属性的一个特例。连续属性与离散属性相对,可以从不可数无穷多个属性值中取值,通常取值范围为实数。实际中,通常只用有限多位来表示-一个数,因此连续属性在计算机中通常表示为浮点数。


1.3根据数据的组织方式和相对关系将数据呈现为以下形式

根据数据的组织方式和相对关系将数据呈现为以下形式:


(1)记录数据。这种数据由一条条的记录组成,如记录数据、数据矩阵、文档数据和事务数据等。

(2)图数据。这种数据由记录(点)和记录之间的联系(边)组成,如万维网数据、化学分子结构数据等。

(3)有序数据。这种数据的记录之间存在时间和空间上的序关系,如序列数据、时间序列数据和空间数据等。

图数据和有序数据在孤立数据的基础上增加了数据之间的关联性,因此具有比孤立数据更加丰富的信息。由于图数据和有序数据的组织形式的特殊性,通常称对图数据进行的数据挖掘为图挖掘(GraphMining),称对序列数据进行的数据挖掘为序列挖掘(SequenceMining)。


记录数据


记录数据是数据集由一条一条记录组成数据,每条记录具有相同的属性集合。记录数

据是SQL数据库所使用的数据类型。

数据矩阵是记录数据的一种特例。当每个属性都是数值型属性的时候,这些数据对象就可以被看成空间中的点,每一个维度对应一个属性。这样的数据集可以用m*n的矩阵来表示,其中矩阵的行数m为记录的条数,矩阵的列数n为记录的属性个数。

文档数据是文档集合构成的数据集。在自然语言处理中,在“词袋模型”的假设下将一个文档中词出现的次数作为文档的属性是常见的做法。


交易数据是记录数据的一种特例,在交易数据中,每一条记录(交易)中包含若千个物品。例如超市的销售纪录。

1fc609a27d88b8fe92ce8fa2568b15a7_3345dbf88e4243098aa2ef377d3c40bf.png


超市销售记录


图数据


图数据由点与点之间的连线构成,通常用来表示具有某种关系的数据,如家谱图、分类体系图和互联网链接关系等。在万维网中,网页通常表示为HTML(超文本标记语言)格式,其中包含可以指向其他网页或站点的链接,如果把这些网页视为点,将链接视为有向边,则万维网数据可以看作一个有向图,也有无向图。

01b0c27d78fddaba44e32cc38d6518f3_5fb0d815a3254772a73fedceafb5f7ea.png



有序数据


有序数据是一种数据记录之间存在序关系的数据集,这种序关系体现在前后、时间或者空间上。交易序列数据是一种特殊的有序数据,其中每一个数据都是一个交易序列。


表2.4所示的超市销售记录序列数据中,每一行为一位顾客的购买记录序列,括号内是一次购买的物品清单,不同括号的先后顺序表示时间上的先后顺序。交易序列数据有助于挖掘在时间上具有先后的一些交易的性质,如重复购买,或关联商品。

f303501f5361606d500c41e2bb8612ed_8cc459c43aeb45c291783035425d9fb4.png



2.为什么要进行数据预处理

最主要的原因是数据质量无法满足数据挖掘的要求,如数据可能具有某些不良特性,或者不符合后续挖掘的需要。一般来说,高质量的数据应该满足准确性、完整性和一致性的原则。数据质量的低劣甚至有着来自现实的原因。还有其他一些数据质量问题.如时效性、可信性、有价值、可解释性和可访问性等。


3.数据预处理的任务

数据预处理的主要任务包括数据清洗、数据集成、数据转换、数据归约和数据离散化等。

(1)数据清洗。是对脏数据进行处理并去除这些不良特性的过程。脏数据是指包含噪声,存在缺失值.存在错误和不一致性的数据。

(2)数据集成。是将不同来源的数据集成到一起的过程,这些数据可能来自不同的数据库、数据报表和数据文件。数据集成需要解决数据在不同数据源中的格式和表示的不同,并整理为形式统一的数据。

(3)数据转换。是对数据的值进行转换的过程。在使用某些数据处理方法之前,如k均值聚类和贝叶斯分类,对数值进行转换非常必要。因为当数据的不同维度之间的数量级.差别很大的时候,分类和聚类的结果会变得非常不稳定,这时通常会对数据进行规范化,对数据值进行统- -的放缩。

(4)数据归约。是对数据的表示进行简化的技术。数据归约使得表示非常复杂的数据可以以更加简化的方式来表示。数据归约可以使得数据处理在计算效率、存储效率上获得.较大的提升,而不至于在挖掘分析性能上做出大的牺牲。

(5) 数据离散化。是对连续数据值进行离散化的过程。数据离散化有时也称为量化,数据在离散化过程中可能会损失部分信息,信息论中的率失真理论给出了量化过程中的信息损失与量化的位数的关系。

相关文章
通义灵码,idea无法登录问题,解决方案
idea检查本地服务状态长时间未响应或检查本地服务状态失败
|
存储 分布式计算 资源调度
两万字长文向你解密大数据组件 Hadoop
两万字长文向你解密大数据组件 Hadoop
402 11
|
12月前
|
机器学习/深度学习 数据采集 数据挖掘
11种经典时间序列预测方法:理论、Python实现与应用
本文将总结11种经典的时间序列预测方法,并提供它们在Python中的实现示例。
2205 2
11种经典时间序列预测方法:理论、Python实现与应用
|
机器学习/深度学习 算法 数据处理
《零基础实践深度学习》波士顿房价预测任务1.3.3.4训练过程
这篇文章详细阐述了如何使用线性回归对波士顿房价进行预测,包括构建神经网络模型、数据处理、模型设计、训练过程、梯度下降法以及随机梯度下降法(SGD)的应用,并提供了完整的Python代码实现。
|
SQL 消息中间件 分布式计算
Hadoop生态圈组件及其作用
Hadoop生态圈组件及其作用
|
安全 前端开发 JavaScript
什么是跨域?为什么会产生跨域?怎么解决跨域?
什么是跨域?为什么会产生跨域?怎么解决跨域?
1819 0
|
缓存 Java 关系型数据库
【超全详解】Maven工程配置与常见问题解决指南
检查Maven配置包括验证路径、设置pom.xml与Project Structure的Java版本。基本操作有`clean-compile`、`install`和`package`,其中`install`会将jar包放入本地仓库。获取他人工程后需修改配置、清除缓存、更新依赖等。配置文件应从Maven Repository找寻,选择稳定高版本。创建Maven工程可选archetype如`quickstart`或直接创建Java工程。基本目录结构遵循分层设计原则,常见问题包括假性导包、端口占用、时区问题等,对应解决方案包括删除本地仓库文件、调整系统设置或重新加载项目。
2324 6
【超全详解】Maven工程配置与常见问题解决指南
|
安全 Unix Linux
服务器怎么连接?服务器远程连接图文教程
服务器操作系统可以实现对计算机硬件与软件的直接控制和管理协调,任何计算机的运行离不开操作系统,服务器也一样,服务器操作系统主要分为四大流派:Windows Server、Netware、Unix和Linux。 今天飞飞就给你们分享下常用的Windows、Linux、Unix三种系统的远程连接图文操作方法
3796 0
服务器怎么连接?服务器远程连接图文教程
|
自然语言处理 算法 API
「AIGC」Python实现tokens算法
使用Python的`transformers`库,通过`AutoTokenizer`初始化BERT tokenizer,对文本进行分词统计,减少API调用。示例展示从开始到结束的时间,包括文本转换为tokens的数量和过程耗时。
402 0
「AIGC」Python实现tokens算法
|
消息中间件 缓存 负载均衡
构建高性能的后端服务:优化策略与实践
在当今互联网时代,构建高性能的后端服务至关重要。本文将深入探讨如何通过优化策略与实践来提升后端服务的性能。我们将从数据库优化、缓存策略、异步处理和负载均衡等方面展开讨论,帮助开发者构建出稳定、高效的后端架构。
713 2