Я постараюсь предсказать цены на жилье в Калифорнии на основе множества факторов/особенностей. В настоящее время рынок жилья значительно растет, и Калифорния является одним из самых популярных штатов для проживания, будь то из-за погоды, пляжей, центральности или из-за множества предлагаемых вакансий, связанных с технологиями. Поэтому будет интересно изучить, какие факторы могут повлиять на цены на жилье в Калифорнии, и, надеюсь, модель поможет потенциальным покупателям принимать более обоснованные решения. Чтобы быть более точным, мы предскажем медианную стоимость дома (зависимая переменная y), поскольку это непрерывная переменная, мы применим регрессию метода обучения с учителем. Я выполню линейную регрессию и регрессию случайного леса и сравню, какая из двух моделей лучше. Я использовал пакеты/программное обеспечение Sklearn, Pandas, Numpy и Matplotlib от Python.

Сбор и очистка данных были довольно простыми, я собрал набор данных из K aggle. Полученный набор данных состоял из числовых столбцов и одного категориального столбца. Первым шагом было проверить нулевые значения и удалить их. Было небольшое количество строк относительно всего размера набора данных, поэтому их удаление не составило труда. Чтобы лучше понять отношения между переменными, я использовал функцию corr() для получения матрицы корреляции. На основании этого я смог увидеть, какие переменные можно включить в модель. Поэтому я использовал следующие функции/столбцы: Housing_median_age, total_rooms, househouses и median_outcome.

Первым шагом к построению наших моделей является определение наших предикторов и переменных отклика. мы разделили это на разные наборы, и мы разделили наши данные на данные обучения и тестирования, используя функцию train_test_split(). Мы будем выполнять разделение 20/80 (80% наших данных — это обучающие данные, а 20% наших данных — тестовые данные). Следующим шагом было преобразование журнала для большинства наших функций, поскольку исходное распределение данных не было нормально распределено. Мы сделали это для всего количества комнат, домохозяйств и медианного результата.

После этого мы использовали Sklearn для линейной регрессии и регрессии случайного леса, чтобы предсказать медианные значения домов. В заключение, линейная регрессия оказалась более подходящей, чем регрессия случайного леса, после выполнения оценки для каждой модели с точки зрения значений MSE и r². В таблице ниже показана производительность каждого метода. В целом данные были простыми, и их не нужно было очищать, кроме как избавиться от нулевых значений. С точки зрения ограничений и проблем, с которыми я столкнулся, модель далека от совершенства, я изначально рассматривал дополнительные функции в своей модели, но r² не имел смысла, поэтому мне пришлось настроить, какие функции должна иметь модель, чтобы r² имела смысл.

Код можно найти здесь.