Проведите анализ целевого признака: постройте частотную гистограмму и ящик с усами по новым данным и сравните получившееся распределение с предыдущим.

import pandas as pd
from sklearn.linear_model import LinearRegression
from matplotlib import pyplot as plt
from sklearn.model_selection import train_test_split
# создание константы RANDOM_STATE
RANDOM_STATE = 42
# загрузите данные CSV-файла 'real_estate_clean_extended.csv' в датафрейм pandas
df = pd.read_csv('real_estate_clean_extended.csv')
# формируем тренировочную и тестовую выборки
X = df.drop('price', axis=1)
y = df['price']
X_train, X_test, y_train, y_test = train_test_split(
    X, 
    y, 
    random_state=RANDOM_STATE
)
## визуализация распределения целевого признака
# постройте частотную гистограмму распределения целевого признака с bins=50
bins =  plt.hist(y_train, bins=50)
plt.vlines(x=y_train.mean(), colors='red', ymin=bins[0].min(), ymax=bins[0].max(), label='Среднее')
plt.vlines(x=y_train.median(), colors='red', ymin=bins[0].min(), ymax=bins[0].max(), linestyles='--', label='Медиана')
plt.title('Гистограмма распределения целевого признака')
plt.legend()
plt.show()

# постройте ящик с усами целевого признака с горизонтальной ориентацией
plt.title('График ящик с усами для целевого признака')
plt.boxplot(y_train, vert=False)
plt.show()