我的意思是就是每一行都是一个三维数据,我需要的是最新的二十行数据去预测下一行数据,得到的预测结果也是三维数据,这个三维数据添加在下一行,剔除原来输入的第一行数据,把预测出来的数据与剩余的十九行数据组成新的输入去预测下一行的数据,以此类推连续预测10次,最后只要输出预测的最后一行的数据就好了,一行只有三列数据
时间: 2024-03-08 16:48:36 浏览: 19
明白了,您需要一个循环的预测模型,每次预测都需要用到之前的预测结果。可以使用时间序列分析的方法来实现这个预测模型。以下是一个简单的代码示例:
```python
import pandas as pd
import numpy as np
from sklearn.linear_model import LinearRegression
# 读取数据
data = pd.read_csv('data.csv')
# 滑动窗口大小
window_size = 20
# 预测次数
predict_steps = 10
# 初始化预测结果
predictions = []
# 循环预测
for i in range(predict_steps):
# 取出最新的20行数据
window = data[-window_size:]
# 分离输入和输出
X = window.iloc[:, :-3].values
y = window.iloc[:, -3:].values
# 创建线性回归模型
model = LinearRegression()
# 拟合模型
model.fit(X, y)
# 进行预测
prediction = model.predict(data.iloc[-1, :-3].values.reshape(1, -1))
# 将预测结果添加到predictions中
predictions.append(prediction)
# 将预测结果添加到data中
data.loc[data.index[-1] + 1, ['A', 'B', 'C']] = prediction[0]
# 剔除原来输入的第一行数据
data = data.iloc[1:]
# 输出预测结果
print(predictions[-1])
```
其中,`data.csv`是您的数据文件,包含所有的三维数据。`window_size`表示滑动窗口的大小,`predict_steps`表示预测次数。在每次循环中,我们取出最新的20行数据,分离输入和输出,创建线性回归模型并拟合数据。然后,我们用最新的一行数据进行预测,并将预测结果添加到`predictions`列表中。接下来,将预测结果添加到`data`中,并剔除原来输入的第一行数据。最后,输出预测结果的最后一行数据。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)