Я знаю, что здесь есть несколько похожих вопросов, но, пожалуйста, оставайтесь здесь со мной на секунду.
Я знаю, как работает отступ в python, но следующая проблема ставит меня в тупик.
Рассмотрим следующий код:
# Plot with mnist plot
for sel_err in sel_error:
plot_mnist(x_test[sel_err], y_pred[sel_err], labels=labels[i], k_plots=10, prefix='Predicted class')
Это даст мне следующую ошибку:
Ошибка ожидаемого блока с отступом
Однако, если я добавлю что-то не связанное с кодом без изменения отступа, это будет работать.
Следующий код не даст мне никаких ошибок:
# Plot with mnist plot
for sel_err in sel_error:
plot_mnist(x_test[sel_err], y_pred[sel_err], labels=labels[i], k_plots=10, prefix='Predicted class')
print("hello world")
Могу добавить, что оба примера кода находятся в самом конце документа, однако я позаботился о том, чтобы после кода не было скрытых вкладок или чего-либо подобного.
Любая идея, почему я получаю эту ошибку здесь?
EDIT:
Вот полный код метода для проверки:
def ex_3_b(x_train, y_train, x_test, y_test):
"""
Solution for exercise 3 b)
:param x_train: Training samples (2-dimensional)
:param y_train: Training labels
:param x_test: Testing samples (2-dimensional)
:param y_test: Testing labels
:return:
"""
labels = range(1, 6)
clfLin = svm.SVC(decision_function_shape='ovr', kernel='linear', C=10.0)
clfLin.fit(x_train, y_train)
y_pred = clfLin.predict(x_test);
confusion_mat = confusion_matrix(y_test,y_pred,labels)
print(np.matrix(confusion_mat))
plot_confusion_matrix(confusion_mat, labels)
# Numpy indices to select images that are misclassified.
sel_error = np.where(y_test != y_pred)
# should be the label number corresponding the largest classification errors
i = 3
# Plot with mnist plot
for sel_err in sel_error:
plot_mnist(x_test[sel_err], y_pred[sel_err], labels=labels[i], k_plots=10, prefix='Predicted class')
И какое-то странное поведение, которое я обнаружил во время отладки. Как кажется, переменная sel_error
вызывает некоторые проблемы:
Я на самом деле не совсем уверен, что здесь происходит, отладчик видит дополнительную переменную? (Примечание: курсор помещен в переменную sel_error
на обоих изображениях.)