sklearn中的StandardScacler

StandardScaler作用:

StandardScaler是对数据集做归一化处理的,他依据列为单位进行计算,即每个特征

计算方法:

(原始值 - 平均值)/ 标准差

代码验证:

调用StandardScaler

import numpy as np
from sklearn.preprocessing import StandardScaler
np.random.seed(42)
​
samples = np.random.randn(10,1)
scaler = StandardScaler()
scaler.fit(samples)

Out:

StandardScaler(copy=True, with_mean=True, with_std=True)

手动实现

# 预测函数
def scale(series, x):
    mean = np.mean(series)
    std = np.std(series)
    return (x-mean)/std
​
 

验证

scale(samples[:,0], np.array([[1],[2]]))

Out:

array([[0.80468598],
       [2.26261185]])
scaler.transform(np.array([[1],[2]]))

Out:

array([[0.80468598],
       [2.26261185]])

结论

手动方法与结果相同,这就验证了StandardScaler算法,其计算公式为:

扫描二维码关注公众号,回复: 9549356 查看本文章

\frac{X-mean(x)}{std(x)}

url?signature=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ0eXBlIjoidmlldyIsImlhdCI6MTU4MzIwNjQxOCwiZmlsZUlkIjozNDg5NzM2LCJ0aW1lc3RhbXAiOjE1ODMyMDY0MTgzMTV9.XiyqNS4p05JUE8lNVjlLiwU3eZLzczB3l1Z7byQw9kUuploading.4e448015.gif转存失败重新上传取消url?signature=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ0eXBlIjoidmlldyIsImlhdCI6MTU4MzIwNjQxOCwiZmlsZUlkIjozNDg5NzM2LCJ0aW1lc3RhbXAiOjE1ODMyMDY0MTgzMTV9.XiyqNS4p05JUE8lNVjlLiwU3eZLzczB3l1Z7byQw9kUuploading.4e448015.gif转存失败重新上传取消   

发布了1 篇原创文章 · 获赞 0 · 访问量 2

猜你喜欢

转载自blog.csdn.net/xuxingyuan/article/details/104629400