• sklearn快速入门教程:归一化


    MinMaxScaler

    缺点:

     新数据加入时可能会 改变数据的min或max值

    实现1:

    1. from sklearn.preprocessing import MinMaxScaler
    2. data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
    3. #实例化
    4. scaler = MinMaxScaler() #如果()内为空,MinMaxScaler会把原数据归一化到默认值:[o,1]范围内
    5. scaler.fit(data) #生成了min&max
    6. result = scaler.transform(data) #通过transform接口导出归一化结果
    7. result
    array([[0.  , 0.  ],
           [0.25, 0.25],
           [0.5 , 0.5 ],
           [1.  , 1.  ]])

     解析:

    通过下面的代码可见data: 

    1. data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
    2. import pandas as pd
    3. pd.DataFrame(data)

     

     再看array的运行结果,可见:

    data中0、1两列提供的信息量是一样的。

     

     其实倒数第三、第二行的代码可以合起来写成

    result = scaler.fit_transform(data)
    

    其运行结果是一样的 

    与之对应的可以将运行结果逆转回原数据

    scaler.inverse_transform(result)
    
    array([[-1. ,  2. ],
           [-0.5,  6. ],
           [ 0. , 10. ],
           [ 1. , 18. ]])

    实现2 

    1. from sklearn.preprocessing import MinMaxScaler
    2. data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
    3. #实例化
    4. scaler = MinMaxScaler(feature_range = [5, 10]) #把原数据归一化到:[5,10]范围内
    5. scaler.fit(data) #生成了min&max
    6. result = scaler.transform(data) #通过transform接口导出归一化结果
    7. result
    array([[ 5.  ,  5.  ],
           [ 6.25,  6.25],
           [ 7.5 ,  7.5 ],
           [10.  , 10.  ]])
  • 相关阅读:
    C数据结构:排序
    JavaScript如何打开和使用JavaScript控制台
    c# --- 抽象类,密封类与子类的构造函数
    LeetCode 4. 寻找两个正序数组的中位数
    鸿蒙HarmonyOS实战-Web组件(请求响应和页面调试)
    Kafka MQ 生产者和消费者
    dp入门课(一)
    第六章 继承
    ALSA pcm接口的概念解释
    asp.net core、c#关于路径的总结
  • 原文地址:https://blog.csdn.net/ykrsgs/article/details/126247857