Ошибка IndexError: индекс 100 выходит за рамки для оси 0 размером 8

#python #indexing

#python #индексирование

Вопрос:

Я очень новичок в Python. Я получаю следующую ошибку индекса:

 Traceback (most recent call last): File "Pride.py", line 109, in <module>
plt.imshow(X_train[i,0], interpolation='nearest')
IndexError: index 100 is out of bounds for axis 0 with size 8 
  

Вот код:

 print('X_train shape:', X_train.shape)
print(X_train.shape[0], 'train samples')
print(X_test.shape[0], 'test samples')

# convert class vectors to binary class matrices
Y_train = np_utils.to_categorical(y_train, nb_classes)
Y_test = np_utils.to_categorical(y_test, nb_classes)

i = 100
plt.imshow(X_train[i,0], interpolation='nearest')
print("label : ", Y_train[i,:]) 
  

Я был бы признателен за некоторую помощь, поскольку я совершенно сбит с толку.

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

1. в нем говорится, что вы пытаетесь получить доступ к 100-му элементу из массива с 8 позициями. что происходит при попытке len(X_train) ?

2. Заменяет ли «len(x_train)» «i = 100» или следует за ним? Где мне написать эту строку?

Ответ №1:

попробуйте сделать что-то вроде

if (len(X_train >= i):
plt.imshow(X_train[i,0], interpolation='nearest')
print("label : ", Y_train[i,:])

чтобы избежать подобных ошибок

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

1. Означает ли это, что я должен удалить i = 100?

2. вы могли бы попробовать сделать i=7 для проверки, работает ли это

3. пожалуйста, не забудьте проголосовать за ответы, которые вам подходят 🙂