【问题标题】:sklearn: modify (Standard)Scalersklearn:修改(标准)Scaler
【发布时间】:2021-06-06 14:31:44
【问题描述】:

我正在尝试将变量缩放为均值为零,标准差为 0.5(!)。我能找到的最接近的 sklearn.preprocessing.StandardScaler 似乎是不可修改的 - 还是我遗漏了什么?

是否有另一个现有的缩放器用于此目的 - 或者在这里最容易做的事情是什么(除了手动做;))?

【问题讨论】:

    标签: python pandas scikit-learn


    【解决方案1】:

    由于平均值是 0 和 σ(CX) = Cσ(X),其中 C 是某个常数,我将在之后相乘。

    import pandas as pd
    from sklearn.preprocessing import StandardScaler
    
    X = pd.Series(range(100)).to_numpy().reshape(-1,1)  
    
    X1 = StandardScaler().fit_transform(X)
    
    X1.mean()
    #4.440892098500626e-18  i.e. 0
    X1.std()
    #1.0
    

    标准差为 1/2:

    X1 = StandardScaler().fit_transform(X)*0.5
    
    X1.mean()
    #2.220446049250313e-18  i.e. 0
    X1.std()
    #0.5
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-10
      • 2020-06-12
      • 1970-01-01
      • 2018-04-16
      • 1970-01-01
      • 1970-01-01
      • 2019-04-09
      • 2011-06-22
      相关资源
      最近更新 更多