【问题标题】:AttributeError: 'Series' object has no attribute 'reshape'AttributeError:“系列”对象没有属性“重塑”
【发布时间】:2019-05-12 10:20:41
【问题描述】:

我正在使用 sci-kit 学习线性回归算法。 在缩放 Y 目标特征时:

Ys = scaler.fit_transform(Y)

我明白了

ValueError:预期的二维数组,得到一维数组:

之后我使用以下方法重塑:

Ys = scaler.fit_transform(Y.reshape(-1,1))

但又报错了:

AttributeError: 'Series' 对象没有属性 'reshape'

所以我检查了 pandas.Series 文档页面,它说:

reshape(*args, **kwargs) 自 0.19.0 版起已弃用。

【问题讨论】:

    标签: python python-3.x pandas reshape attributeerror


    【解决方案1】:

    解决方案已链接到documentation page 上的重塑方法。

    你需要使用Y.reshape(-1,1)的Insted:

    Y.values.reshape(-1,1)
    

    【讨论】:

      【解决方案2】:

      解决办法确实是这样:

      Y.values.reshape(-1,1)

      这会使用您的 pandas Series 对象的值提取一个 numpy 数组,然后将其重塑为二维数组。

      您需要这样做的原因是 pandas Series 对象在设计上是一维的。如果您想留在 pandas 库中,另一个解决方案是将 Series 转换为 2D 的 DataFrame:

      Y = pd.Series([1,2,3,1,2,3,4,32,2,3,42,3])
      
      scaler = StandardScaler()
      
      Ys = scaler.fit_transform(pd.DataFrame(Y))
      

      【讨论】:

        【解决方案3】:

        您无法重塑熊猫系列,因此您需要对 numpy 数组执行操作。正如其他人建议的那样,您可以使用y.values.reshape(-1, 1),但如果您想打动您的朋友,您可以使用:

        y.values[Ellipsis, None]
        

        相当于:

        y.values[..., None]
        

        它基本上意味着所有维度,然后是最后一个的新维度。这是一个完整的示例:

        import numpy as np
        import pandas as pd
        from sklearn.preprocessing import StandardScaler
        
        y = pd.Series(np.random.rand(5))
        
        0    0.497165
        1    0.818659
        2    0.327064
        3    0.772548
        4    0.095715
        dtype: float64
        
        scaler = StandardScaler()
        
        scaler.fit_transform(y.values[Ellipsis, None])
        
        array([[-0.019],
               [ 1.165],
               [-0.645],
               [ 0.995],
               [-1.496]])
        

        【讨论】:

          猜你喜欢
          • 2018-06-06
          • 2018-06-20
          • 2020-11-11
          • 2019-04-22
          • 2019-07-26
          • 2020-04-04
          • 2019-09-16
          • 2017-12-12
          • 2018-05-25
          相关资源
          最近更新 更多