数据标准化方法 (很有用的基础方法 收藏了 呵呵)

来源:互联网 发布:乖离性ma数据多大 编辑:程序博客网 时间:2024/06/02 06:14

在数据分析过程中,我们经常需要对数据进行标准化(normalization),即通过将属性数据按照比例缩放,使之落入一个小的特定区间,如[-1,+1]、[0,1]等,以进一步分析数据的属性。

有许多中数据标准化方法,常用的有最小-最大标准化、Z-score标准化和按小数定标标准化等。

Min-max 标准化

min-max标准化方法是对原始数据的线性变换。设minA和maxA分别为属性A的最小值和最大值,将A的一个原始值v通过min-max标准化映射成在区间[new_minA, new_maxA]中的值v’。

image

若取值区间是[0,1],则公式可简化为:

image

min-max标准化方法保留了原始数据之间的关系。如果今后输入的数据落在A的原数据区外,该方法将会面临“越界”错误。

例如 假定属性income的最小与最大值分别为$12,000和$98,000。我们想映射income到区间[0,1]。根据min-max标准化,incom值$73,600将变换为(73,600-12,000)/(98,000-12,000)×(1-0)=0.716。

 

z-score 标准化

这种方法基于原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。将A的原始值v使用z-score标准化到v’。

image

其中image 是属性A原始值得均值,image 是属性A原始值的标准差。标准差image 即为方差image 的平方根。方差的计算公式如下:

image

z-score标准化方法适用于属性A的最大值和最小值未知的情况,或有超出取值范围的离群数据的情况。

Decimal scaling小数定标标准化

这种方法通过移动数据的小数点位置来进行标准化。小数点移动多少位取决于属性A的取值中的最大绝对值。将属性A的原始值v使用decimal scaling标准化到v’的计算方法是:

image

其中,j是满足条件image 的最小整数。

例如 假定A的值由-986到917,A的最大绝对值为986,为使用小数定标标准化,我们用1000(即,j=3)除以每个值,这样,-986被规范化为-0.986。

注意,标准化会对原始数据做出改变,因此需要保存所使用的标准化方法的参数,以便对后续的数据进行统一的标准化。

参考资料:
1. Data Mining: Concepts and Techniques, Jiawei Han and Micheline Kamber, 2000

 

引文出处:http://www.traderlife.cn/?p=304

原创粉丝点击