大家好,最近初學神經網路,目前正在練習用LSTM做股價預測,遇到了一些問題想請教大家。
手邊的資料集是某股票2010年至2020年的股價資料(新聞標題情感分數、開盤價、成交價、最高價、最低價、震幅、成交量),正規化後如下:
想要用過去30天的資料預測第31天的震幅,以2010~2018年做訓練集,2019~2020年做驗證,在製造訓練集序列時遇到了錯誤,請問該如何修改呢?
n = 30
feature_names = list(norm_data.drop('Change%', axis=1).columns)
X = []
y = []
indexes = []
norm_data_x = norm_data[feature_names]
for i in tqdm.tqdm_notebook(range(0,len(norm_data)-n)):
X.append(norm_data_x.iloc[i:i+n]. values)
y.append(norm_data['Change%'].iloc[i+n-1])
indexes.append(norm_data.index[i+n-1])
X_train = X[indexes < datetime.datetime(2018,1,1)]
y_train = y[indexes < datetime.datetime(2018,1,1)]
TypeError: '<' not supported between instances of 'list' and 'datetime.datetime'
另外想再詢問,若我想用30天資料預測第31-33天的收盤價,這算是輸出入長度不同的多對多序列嗎?該如何改寫呢?謝謝