【问题标题】:Python Linear Regression Predict Error - Array IssuePython 线性回归预测错误 - 数组问题
【发布时间】:2020-08-07 09:11:24
【问题描述】:

当我尝试对线性回归使用 .predict 时,我收到以下错误:

ValueError: 预期的二维数组,得到的是标量数组: 数组=80。 如果您的数据具有单个特征,则使用 array.reshape(-1, 1) 重塑您的数据,如果数据包含单个样本,则使用 array.reshape(1, -1)。

我不太了解重塑功能以及为什么需要它。有人可以向我解释这是做什么的,以及如何应用它来预测我的模型吗?

import matplotlib.pyplot as plt
import numpy as np
from sklearn.linear_model import LinearRegression

x = np.array([95,85,80,70,60])
y = np.array([85,95,70,65,70])
x = x.reshape(-1,1)
y = y.reshape(-1,1)
plt.scatter(x,y)
plt.show()

reg = LinearRegression()
reg.fit(x,y)

reg.predict(80)

【问题讨论】:

    标签: python arrays linear-regression


    【解决方案1】:

    predict() 的输入是二维数组,您正在传递整数值,这就是您收到错误的原因。您需要将 80 作为 2d 列表传递 [[80]]

    reg.predict([[80]])
    

    【讨论】:

      猜你喜欢
      • 2021-11-20
      • 2017-06-06
      • 2017-03-06
      • 1970-01-01
      • 2017-06-03
      • 1970-01-01
      • 2016-08-26
      • 2023-03-13
      • 2018-11-17
      相关资源
      最近更新 更多