Мы собрали все ваши действия с тренировочной выборкой в функцию get_feature_engineering_matrix. На вход ей нужно подавать массив matrix. Функция вернёт его с изменениями.
- С помощью функции
get_feature_engineering_matrixпереопределите переменнуюmatrix_X_trainс входными признаками тренировочной выборки. Выведите первые пять строк массива, который получился. - Сделайте то же самое для переменной matrix_X_test с входными признаками тестовой выборки.
# необходимые импорты
import numpy as np
def get_feature_engineering_matrix(matrix):
# общая и жилая площади квартир, их соотношение
total_area = matrix[:, 0]
living_area = matrix[:, 1]
living_to_total = living_area / total_area
# добавление нового столбца с соотношением площадей
matrix = np.insert(matrix, 1, living_to_total, axis=1)
# удаление лишнего столбца с жилой площадью
matrix = np.delete(matrix, 2, axis=1)
# добавление столбца с константой
matrix = np.insert(matrix, 0, 1, axis=1)
return matrix
# считывание npy-файлов
matrix_X_train = np.load('matrix_X_train.npy')
matrix_X_test = np.load('matrix_X_test.npy')
# обработка матрицы с входными признаками тренировочной выборки
matrix_X_train = get_feature_engineering_matrix(matrix_X_train)
# вывод первых пяти строк полученной матрицы
print(matrix_X_train[:5])
# обработка матрицы с входными признаками тестовой выборки
matrix_X_test = get_feature_engineering_matrix(matrix_X_test)
# вывод первых пяти строк полученной матрицы
print(matrix_X_test[:5])