数据转换| 学习笔记

简介: 快速学习数据转换。

开发者学堂课程【高校精品课-北京理工大学-数据仓库与数据挖掘(上):数据转换】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/921/detail/15632


数据转换

 

内容分析:

一、数据转换的含义及方法

二、数据转换包含内容

 

一、数据转换的含义及方法

1、定义:数据转换指的是通过变换将数据转换成适用于数据挖掘任务的数据,即得到面向特定数据挖掘任务的数据。

将数据转换看成一个函数映射,通过数据转换可以将原始的属性值变转换成一个新的属性值。

2、方法:通过一些简单的函数进行数据转换。

通过这些简单的函数映射,可以将原始的属性值变成一个新的属性值。

 

二、数据转换包含:

1、规范化

⑴含义:规范化指的是对数据进行变换,使之落入到一个比较小的特定区域。

⑵作用:通过规范化,可以统一各个属性的量纲。

⑶常用的规范化方法:极大极小值规范化、 Z-score 规范化以及小数定标法。

①极大极小值规范化方法:

计算公式:

image.png

image.png表示的是属性之前的范围。image.png表示是转换后的范围

例如:对于收入,它的初始范围是12,000~98,000之间,想让它落入到0~1的区间之内,通过这个公式就可以实现,通过这个公式,73,600的这样的一个收入就会转化成为0.716。

image.png

②  Z-score 规范化方法

计算公式:

image.png

image.png代表的是这个属性的均值,image.png代表的是这个属性的标准差

例子:假设收入这个数据的均值是54,000,标准差是16,000,那么收入73,600就可以转化为1.225。

image.png

③小数定标法

公式:

image.png

j 是使得 Max (∣v′∣)<1的最小整数

例子:假设属性取值范围是-975~923,那么 a 的最大绝对值就是975,使它小于1的最小整数,j是等于3。因此转换直接除以10的三次方就可以。比如说900就被规范为0.9。

2、离散化

⑴定义:离散化指的是将连续类型的属性变换成为有序属性

⑵在数据挖掘算法中有很多算法对属性是有要求的。比如说要求属性必须是离散类型的,这个时候就必须对数据进行离散化。

根据理想化的数据是用于非监督学习任务还是监督学习任务,理想化方法分为:监督离散化方法和非监督离散化方法。

①对于无监督离散化方法主要包含分箱、直方图和基于聚类的方法。

Ⅰ基于分箱的离散化方法主要包含等宽的分箱方法和和等身的分箱方法。

等宽的分箱方法是将属性域分割为宽度相同的间隔,比如属性区间为A 到 B ,希望将该属性离散为 N 个间隔,那么其宽度即为( B - A )/ N 。等宽的封箱方法对于异常值是很敏感的,所以等宽的分享方法不适用于倾斜数据的理想化。

示例:这幅图展示的是一组数据。这种数据它是具有两个属性,x 属性和 y 属性。对于 x 属性取值范围是0~20。如果希望将这个属性分割为4个间隔,那么它的宽度就是(20-0)÷4=5。根据间隔我们可以把这个属性分割成为0~5,5~10,10~15和15~20这4个区间,那么每个区间的宽度都是相同的。

image.png

等身的分箱方法是将属性分割为N个间隔,落入每个间隔的数据对象大的个数是相同的。

示例:对于刚才这组数据的x属性使用等身分箱方法进行离散化,可以看到依然是分成了4个间隔,落入到每个间隔的数据对象的个数是相同的,但是这4个间隔的宽度大家可以看到是不一致的。

image.png

Ⅱ基于聚类的方法

如图所示使用 k-means 算法对 x 属性进行聚类,得到四个簇,根据每一个簇的取值范围得到4个不同的间隔。

image.png

如果理想化的数据后续要用于有监督的学习任务,就需要使用一些面向有监督学习任务的理想化方法。

②对于监督离散化方法主要包含基于商的方法和基于卡方的方法。

Ⅰ基于熵的方法适用于分类领域

对于数据离散化,需要选择一个分裂点,根据分裂点将数据分成两个间隔。

基于熵的数据转化方法中,会选择具有最大信息争议的分裂点作为最佳分裂点将数据一分为二。

对于一个数据集 D,用 p 来代表它的每一个类别的概率,如果这个数据集 D 它有 m 类,

其信息熵的计算公式为:

image.png

Info(D)指根据数据分布清楚数据集 D 中的每一个数据对象类标签所需要的信息量。

对于这个数据集中的一个属性 S,使用一个分裂点 T,将这个数据集分为两部分 S1和 S2。计算信息熵 Info(D)

image.png

 image.png( T ) 指在知道分论点的情况下,清楚数据集 D 中的每一个数据对象的标签需要的信息熵。

 image.png( T ) < Info(D),两者之差就是分裂点 T 的信息争议

Gain ( T )指的是这个分裂点对识别数据集 D 中的每一个数据对象类标签的贡献。贡献越大的,这个分裂点就越好。所以要选择具有最大信息争议的分裂点,作为分裂点。

总结:对于基于熵的数据分列方法,首先是选择一个最佳分裂点,将数据一分为二,然后再在各个部分数据中再选择最佳分裂点,再将数据一分为二,依次进行,直到得到间隔数目的要求。

image.png

3、数据聚合

数据聚合就指的是将多个属性值合并成为一个新的属性值。

比如这幅图展示的是澳大利亚的月降水量,根据月降水量,通过数据汇总,可以得到这个地区的年降水量,这样的操作就是叫数据聚合。

image.png

4、属性构造

数据构建是基于已有的属性构造新的属性,并把新的属性加入到原始属性中。

比如知道一个形状的长和宽,那么可以构造这样的一个形状的周长。将周长这个属性加入到原始属性中,以便进行后续的数据挖掘任务。

image.png

相关文章
|
6月前
|
数据采集 数据可视化 数据挖掘
数据清洗有什么方式
数据清洗有什么方式
|
6月前
|
机器学习/深度学习 数据采集 算法
数据转换与归一化:Python 的数据处理技巧
在数据分析和机器学习的过程中,数据转换和归一化是非常重要的步骤。它们可以帮助我们将数据调整为适合分析和建模的形式,提高算法的准确性和泛化能力。在 Python 中,有许多内置的库和工具可以帮助我们进行数据转换和归一化。本文将介绍一些常用的数据转换和归一化技术,并提供 Python 代码示例。
|
18天前
|
数据采集 数据可视化 Python
改进分析的五种鲜为人知的数据转换技术
改进分析的五种鲜为人知的数据转换技术
|
6月前
|
数据采集 数据挖掘 大数据
数据处理利器:使用Pandas进行数据清洗与转换
【4月更文挑战第12天】在大数据时代,Pandas是Python数据分析的关键工具,提供高效的数据清洗和转换功能。本文介绍了如何使用Pandas处理缺失值(删除或填充)、异常值(Z-Score法和IQR法)以及重复值(检测和删除)。此外,还涵盖了数据转换,包括数据类型转换、数据标准化(Min-Max和Z-Score)以及类别数据的one-hot编码。通过学习这些方法,可以为数据分析和挖掘奠定坚实基础。
173 0
|
4月前
|
消息中间件 中间件 API
中间件数据转换与处理
【7月更文挑战第6天】
89 6
|
JSON 数据可视化 数据挖掘
python数据可视化开发(2):pandas读取Excel的数据格式处理(数据读取、指定列数据、DataFrame转json、数学运算、透视表运算输出)
python数据可视化开发(2):pandas读取Excel的数据格式处理(数据读取、指定列数据、DataFrame转json、数学运算、透视表运算输出)
374 0
|
5月前
|
数据采集 存储 数据可视化
Pandas高级教程:数据清洗、转换与分析
Pandas是Python的数据分析库,提供Series和DataFrame数据结构及数据分析工具,便于数据清洗、转换和分析。本教程涵盖Pandas在数据清洗(如缺失值、重复值和异常值处理)、转换(数据类型转换和重塑)和分析(如描述性统计、分组聚合和可视化)的应用。通过学习Pandas,用户能更高效地处理和理解数据,为数据分析任务打下基础。
616 3
|
6月前
|
存储 NoSQL 数据挖掘
Pandas 数据类型概述与转换实战
Pandas 数据类型概述与转换实战
|
数据安全/隐私保护 Python
【python基础知识】1.数据类型、数据应用、数据转换
【python基础知识】1.数据类型、数据应用、数据转换
145 1
【python基础知识】1.数据类型、数据应用、数据转换
|
存储
<2>[QTCN]图片数据转换工具
说明:图片数据转换工具,可以批量将图片转换成数据,将数据转换为图片。 亮点:延时处理,图片数据解码,16进制格式和base64格式,进度条同步显示,文件保存等。 新增: 自动推算路径无需再选择(不存在则自动创建)
126 0