python - 可以将数组作为输入传递给预测模型吗?
问题描述
我试图将一个数组传递给一个函数,该函数将根据传递给它的 x 值数组来预测 y 值。该模型根据风速预测发电量。我正在使用一系列风速传递到函数中,该函数有望创建一系列发电。我相信我的问题是将数组作为输入参数传递,但是我的函数也可能是错误的,所以如果这是问题,如果您能提供帮助,我将不胜感激!我将在下面包含一些相关的代码。
from sklearn.preprocessing import PolynomialFeatures
poly_reg = PolynomialFeatures(degree = 2)
wspoly = poly_reg.fit_transform(ws)
wspoly
from sklearn.preprocessing import PolynomialFeatures
poly_reg = PolynomialFeatures(degree=3)
wspoly = poly_reg.fit_transform(ws)
lin_reg2 = LinearRegression()
lin_reg2.fit(wspoly,elec)
plt.figure(figsize = (25,15))
x_grid = np.arange(min(ws), max(ws), 0.1)
x_grid = x_grid.reshape(len(x_grid), 1)
plt.scatter(ws, elec, color = 'red')
plt.plot(x_grid, lin_reg2.predict(poly_reg.fit_transform(x_grid)), color = 'blue')
plt.title("Polynomial Regression of Wind Speed & Electricty Generated")
plt.xlabel('Wind Speed (m/s)')
plt.ylabel('Electricity Generated (kWh)')
plt.show()
prediction = lin_reg2.predict(poly_reg.fit_transform([[10]]))
print("Using Polynomial Regression, the prediction is: ", prediction)
上面使用模型来预测 x 值为 10 时的 y 值。理想情况下,我希望这个 '10' 是一个包含许多 x 值的数组。
forecast = pd.DataFrame(df, columns = ['Avg WS'])
forecast2000 = forecast.head(1976)
forecast2000.head()
array = np.array(forecast2000['Avg WS'])
array
这是我想代替上面的“10”的数组。低于这一点的所有内容都展示了我尝试使用函数来使其工作。我在这种方法中可能完全错误,因此请随意丢弃它并从您喜欢的任何角度提供帮助。
from sklearn.preprocessing import PolynomialFeatures
poly_reg = PolynomialFeatures(degree = 2)
arraypoly1 = array[:,None]
arraypoly = poly_reg.fit_transform(arraypoly1)
arraypoly
def myfunc(*xval):
for x in xval:
lin_reg2.predict(poly_reg.fit_transform([[x]]))
return (yval)
myfunc(arraypoly)
上面的尝试提供了一个错误,它有“找到暗淡为 4 的数组。预计估计器 <= 2。”
请帮忙!!
解决方案
推荐阅读
- r - r dplyr::case_when 错误:必须是字符向量,而不是双精度向量
- python-3.x - 如何使用 Python 3 列出所有与 Regex 对象匹配的模式?
- c# - 在 C# 中将 SqlDataReader 转换为对象列表的最快方法
- android - 将远程图像加载到 Android 中的 NotificationCompat MessagingStyle Message SetData
- javascript - 验证DOMNesting(...):
- python - 无法创建给定大小的必需列表
- android - 使用 JitPack 无法获取所有子项目
- flutter - 如何在滚动颤动上隐藏容器
- pine-script - pine 脚本研究中的追踪止损实现
- performance - ILogger 到 blob 存储很慢