Я предполагаю, что для создания горячей кодировки вы используете sklearn onehotencoder. Если вы используете это, то проблема должна быть решена легко. Поскольку вы устанавливаете один горячий кодер на свои тренировочные данные
from sklearn.preprocessing import OneHotEncoder
encoder = OneHotEncoder(categories = "auto", handle_unknown = "ignore")
X_train_encoded = encoder.fit_transform(X_train)
Итак, теперь в приведенном выше коде ваш кодировщик встроен в ваши тренировочные данные, поэтому, когда вы получаете тестовые данные, вы можете преобразовать их в те же кодированные данные с помощью этого встроенного кодировщика.
test_data = encoder.transform(test_data)
Теперь ваши тестовые данные также будут иметь форму 1x141. Вы можете проверить форму, используя
(pd.DataFrame(test_data.toarray())).shape