上面代码没有实现,y_hat1(x,y) 把他的所以数据按normalize中的最后一列反归一. normalize(23,2)最后一列是目标列,
时间: 2024-03-27 07:35:34 浏览: 58
MODE_NORMALIZE.zip_normalize mode_risingqpo_归一化_振型归一化_数据归一化
5星 · 资源好评率100%
非常抱歉,我理解有误。如果您想要实现将`y_hat1(x, y)`函数返回的数据按照`normalize`中的最后一列进行反归一化,可以将函数修改为如下形式:
```
def y_hat1(x, y):
data = np.concatenate((x, y), axis=1)
data = FNormalizeMultUseData(data, normalize)
x = data[:, :-1]
y = data[:, -1:]
model = LinearRegression().fit(x, y)
y_hat = model.predict(x)
# 反归一化
y_hat = y_hat * (normalize[-1, 1] - normalize[-1, 0]) + normalize[-1, 0]
y = y * (normalize[-1, 1] - normalize[-1, 0]) + normalize[-1, 0]
return y_hat, y
```
这里新增了反归一化的实现。在`y_hat1`函数中,先使用`FNormalizeMultUseData`函数对数据进行归一化处理。然后使用线性回归模型对归一化后的数据进行拟合,并得到预测值`y_hat`。最后,将`y_hat`和原始的`y`数据按照`normalize`中的最后一列进行反归一化处理,得到反归一化后的预测值和原始值,一并返回即可。
阅读全文