Ошибка синтаксиса: неверный синтаксис | прогнозирование - PullRequest
0 голосов
/ 21 марта 2020

относительно новый для python и пытается прогнозировать продажи. Я проложил себе путь к этому моменту и ударил стену. Пожалуйста, помоги, если можешь. Что я делаю неправильно? Кстати, я работаю в python 3.

Код:

изменить форму y_pred

y_pred = y_pred.reshape(y_pred.shape[0], 1, y_pred.shape[1])

восстановить тестовый набор для обратного преобразования

pred_test_set = []
for index in range(0,len(y_pred)):
    print np.concatenate([y_pred[index],X_test[index]])

pred_test_set.append (np.concatenate ([y_pred [index], X_test [index]]))

изменить pred_test_set

pred_test_set = np.array(pred_test_set)
pred_test_set = pred_test_set.reshape(pred_test_set.shape[0], pred_test_set.shape[2])

обратное преобразование

pred_test_set_inverted = scaler.inverse_transform(pred_test_set)

Ошибка:

File "<ipython-input-259-19ec122fada5>", line 7
    print np.concatenate([y_pred[index],X_test[index]])
           ^
SyntaxError: invalid syntax

Ответы [ 2 ]

0 голосов
/ 21 марта 2020

Вы используете синтаксис Python 2, но выполняете Python 3.

В Python 3 вы должны использовать функцию print, например: print()

В вашем случае фрагмент кода должен быть:

pred_test_set = []
for index in range(0,len(y_pred)):
    print(np.concatenate([y_pred[index],X_test[index]]))
0 голосов
/ 21 марта 2020

Если вы действительно используете python 3, print теперь является вызовом функции, а не оператором. Другими словами, вам нужны круглые скобки:

print(np.concatenate([y_pred[index],X_test[index]]))
#    ^                                             ^

Следующая запись показывает это в действии:

>>> print 1
  File "<stdin>", line 1
    print 1
          ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(1)?
>>> print(1)
1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...