数据归一化的三种方法

  1. min-max归一化
    数据归一化的三种方法
    python示例:

    from sklearn import preprocessing
    
    X=[
        [1,2,3],
        [2,2,1],
        [3,4,5]]
    #按照列对数据进行归一化
    min_max_scaler = preprocessing.MinMaxScaler()
    X = min_max_scaler.fit_transform(X)
    print(X)
    

    运行结果:
    数据归一化的三种方法

  2. Z-score
    归一化后的数据服从正态分布
    数据归一化的三种方法 python示例:

    from sklearn import preprocessing
    #每一行表示一个样本,每一列表示一个属性
    X=[
        [1,2,3],
        [2,2,1],
        [3,4,5]]
    #按照列对数据进行归一化
    X=preprocessing.scale(X)
    print(X)
    

    运行结果:
    数据归一化的三种方法

  3. 小数定标法
    通过移动属性A的小数点进行规范化,小数点的移动依赖于A的最大绝对值:
    数据归一化的三种方法

    例:假定A的取值范围为[-691,14],则A的最大绝对值为691,每个值除以1000(j=3),-691就被规范化为-0.691,14被规范化为0.014

    python 示例:

    import numpy as np
    
    X=[
        [1,2,3],
        [2,2,1],
        [3,4,5]]
    X=np.array(X)
    #按照列对数据进行归一化
    j=np.ceil(np.log10(np.max(abs(X))))
    X = X/(10**j)
    print(X)
    

    运行结果:
    数据归一化的三种方法

上一篇:数值变量分类问题


下一篇:sklearn库的学习