Как вы можете видеть ниже, объект n3w_coin
имеет метод под названием forecast_coin()
, который возвращает фрейм данных с 5 столбцами после удаления date_time, я разделяю данные с помощью train_test_split
, а затем нормализую его с помощью sc
, после преобразования 2D-массива в 3D-массив, который я хотел бы передать модели для обучения, но у меня возникли небольшие проблемы с выяснением того, как передать normalized_x_train
модели
моя цель состоит в том, чтобы передать каждый подмассив внутри normalized_x_train
в модель
Я получаю следующую ошибку IndexError: tuple index out of range
пожалуйста, объясните, почему и что не так в моем подходе
df = pd.DataFrame(n3w_coin.forecast_coin())
x_sth = np.array(df.drop(['date_time'],1))
y_sth = np.array(df.drop(['date_time'],1))
sc = MinMaxScaler(feature_range=(0,1))
X_train, X_test, y_train, y_test = train_test_split(x_sth,y_sth, test_size=0.2, shuffle=False)
print (X_train)
normalized_x_train = sc.fit_transform(X_train)
normalized_y_train = sc.fit_transform(y_train)
print (normalized_x_train)
### converting to a 3D array to feed the model
normalized_x_train = np.reshape(normalized_x_train, (400 , 5 ,1 ))
print (normalized_x_train.shape)
print (normalized_x_train)
model = Sequential()
model.add(LSTM(units = 100, return_sequences = True, input_shape=(normalized_x_train.shape[5],1)))
model.compile(optimizer='adam', loss='mean_squared_error', metrics=['accuracy'])
model.fit(normalized_x_train, normalized_y_train, epochs=100, batch_size=400 )