分享

数据的标准化处理

 恶魔传说 2015-11-26
        在数据分析过程中,我们经常需要对数据进行标准化(normalization),数据标准化主要功能就是消除变量间的量纲关系,从而使数据具有可比性。可以举个简单的例子,一个百分制的变量与一个5分值的变量在一起怎么比较?只有通过数据标准化,都把它们标准到同一个标准时才具有可比性。即通过将属性数据按照比例缩放,使之落入一个小的特定区间,如[-1,+1]、[0,1]等,以进一步分析数据的属性。

       有许多中数据标准化方法,常用的有最小-最大标准化、Z-score标准化和按小数定标标准化等。下面对数据标准化的常用方法进行了介绍:

          一、Min-Max标准化

          min-max标准化方法是对原始数据进行线性变换。设minA和maxA分别为属性A的最小值和最大值,将A的一个原始值x通过min-max标准化映射成在区间【0,1】中的值,其公式为:

       新数据=(原数据-极小值)/(极大值-极小值)

       这种方法适用于原始数据的取值范围已经确定的情况。

       例如:假定属性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'的计算方法是:

     新数据=(原数据-均值)/标准差

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

     spass的默认的标准化方法就是z-score标准化。

     用Excel进行z-score标准化的方法:在Excel中没有现成的额函数,需要自己分步计算,其实标准化的公式很简单。

    步骤如下:

     1、求出各变量(指标)的算术平均值(数学期望)xi和标准差si

      2、进行标准化处理:zij=(xij-xi)/si。其中:zij为标准化后的变量值;xij为实际变量值。

     3、将逆指标钱的正负号对调。标准化后的变量值围绕0上下波动,大雨0说明高于平均水平,小于0说明低于平均水平。

      三、Decimal scaling(小数定标标准化)

      这种方法通过移动数据的小数点位置来进行标准化。小数点移动多少位取决于属性A的取值中的最大绝对值。将属性A的原始值x使用decimal scaling标准化到y'的计算方法是:y=x/(10*j)     其中,j是满足条件的最小整数。

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

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

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


  

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多