生成一段用LSTM模型预测股票指数的代码
时间: 2023-02-18 08:20:39 浏览: 85
:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from keras.models import Sequential
from keras.layers import LSTM, Dense
# 加载股票数据
data = pd.read_csv('stock_data.csv')
# 将数据转换为numpy数组
data_array = np.array(data)
# 分割训练集和测试集
train_data = data_array[:int(len(data_array)*0.8)]
test_data = data_array[int(len(data_array)*0.8):]
# 定义模型
model = Sequential()
model.add(LSTM(units=50, return_sequences=True, input_shape=(train_data.shape[1], 1)))
model.add(LSTM(units=50))
model.add(Dense(1))
# 编译模型
model.compile(optimizer='adam', loss='mean_squared_error')
# 训练模型
model.fit(train_data, epochs=10, batch_size=32)
# 评估模型
test_predictions = model.predict(test_data)
# 可视化预测结果
plt.plot(test_data, test_predictions, color='red', label='Predicted Stock Index')
plt.plot(test_data, test_data, color='blue', label='Actual Stock Index')
plt.legend()
plt.show()