как исправить исправить индекс кортежа вне диапазона

#python #numpy #tensorflow #keras

Вопрос:

Я борюсь с этим в самом начале, с изменением формы.

Это код

 vec_x=np.array(doc_X)
vec_y=np.array(doc_y)

from sklearn.model_selection import train_test_split

X_train, X_test,Y_train, Y_test = train_test_split(vec_x,vec_y, test_size=0.30,random_state = 42)
from keras.layers import LSTM
train_X = np.reshape(X_train, (X_train.shape[0], X_train.shape[1], 1))
regressor = Sequential()

regressor.add(LSTM(units = 50, return_sequences = False, batch_input_shape = (32,train_X.shape[1], 1)))
regressor.add(Dropout(0.2))
regressor.add(Dense(units = 1))

regressor.compile(optimizer = 'adam', loss = 'mean_squared_error', metrics=["accuracy"])

aaa=regressor.fit(train_X, train_y, epochs = 100)
 

Ошибка в том, что

 ---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-143-e838d0dfef98> in <module>()
      6 X_train, X_test,Y_train, Y_test = train_test_split(vec_x,vec_y, test_size=0.30,random_state = 42)
      7 from keras.layers import LSTM
----> 8 train_X = np.reshape(X_train, (X_train.shape[0], X_train.shape[1], 1))
      9 regressor = Sequential()
     10 


IndexError: tuple index out of range
 

Комментарии:

1. ошибка показывает, в какой строке у вас проблема — поэтому сначала вы можете print() посмотреть, что у вас есть в переменных и что дает .shape — возможно, это дает список/кортеж с одним значением, но вы ожидаете 2 значения. Поэтому вам нужно debug написать код — мы не можем вам в этом помочь, потому что у нас нет ваших данных и мы не можем запустить код.