Теперь — к количественным признакам. Проанализируйте их с помощью частотных гистограмм распределения и ящиков с усами.
import pandas as pd
from matplotlib import pyplot as plt
from sklearn.model_selection import train_test_split
# создание константы RANDOM_STATE
RANDOM_STATE = 42
# считываем CSV-файл в датафрейм panda
# выделяем в отдельные переменные целевой признак и входные признаки
df = pd.read_csv('real_estate_clean_cat.csv')
X = df.drop('price', axis=1)
y = df['price']
# разделите данные на тренировочные и тестовые, зафиксируйте random_state
X_train, X_test, y_train, y_test = train_test_split(
X,
y,
random_state=RANDOM_STATE)
# список количественных признаков тренировочной выборки
num_col_names = ['total_area',
'living_area',
'ceil_height',
'city_center_distance',
'years_after_repair']
# постройте графики для количественных признаков тренировочного датасета:
# гистограмму частотности распределения и ящик с усами
fig, axes = plt.subplots(nrows=1, ncols=2, figsize=(10,5))
X_train[num_col_names].plot(kind='hist', bins=10, ax=axes[0])
axes[0].set_title('Гистограмма распределения')
X_train[num_col_names].plot(kind='box', ax=axes[1], rot=45)
axes[1].set_title('Разброс значений признаков')
plt.show()