Как стратегически перевернуть свой дом и резко увеличить цену продажи вашего дома?
История проекта:
Набор данных о жилье Эймса был представлен профессором Дином Де Коком в 2011 году в качестве альтернативы набору данных о жилье в Бостоне. Поскольку набор данных датирован 10-летней давностью, цена может измениться из-за инфляции. Тем не менее, он по-прежнему служит отличным набором данных для специалистов по данным, чтобы оттачивать свои аналитические навыки и навыки моделирования.
В наборе данных он содержит в общей сложности 2919 наблюдений за продажами жилья в Эймсе, штат Айова, в период с 2006 по 2010 год. Существует 23 номинальных, 23 порядковых, 14 дискретных и 20 непрерывных характеристик, описывающих размер, качество, площадь, возраст и состояние каждого дома. другие разные атрибуты. Сложность работы с этим набором данных заключается в том, что нужно позаботиться о 80 столбцах, что довольно много, не говоря уже об отсутствующих значениях в этих столбцах.
Мой структурный подход:
- Очистка данных
- Разработка функций
- Визуализация данных
– Распределение пяти основных функций в зависимости от продажной цены - Выбор функций
– выберите наиболее коррелированные функции, которые будут включены в прогноз модели. - Создание модели
- Поиск по сетке + XGBoost
- Конвейер - › Полиномиальная функция + StandardScaler + RFE + регрессия хребта + поиск по сетке - Модель обучения и тестирования
Постановка проблемы
1. Какие дома доступны для клиентов, если у них ограниченный бюджет?
2. Какие особенности связаны с более высокими продажными ценами?
2. Как выглядит диапазон продажных цен для домов в Эймсе?
Очистка данных
# Making function so that we can reuse it in later stages as well def show_null_values(X, test): # Missing values in each column of Training and Testing data null_values_train = X.isnull().sum() null_values_test = test.isnull().sum() # Making DataFrame for combining training and testing missing values null_values = pd.DataFrame(null_values_train) null_values['Test Data'] = null_values_test.values null_values.rename(columns = {0:'Train Data'}, inplace = True) # Showing only columns having missing values and sorting them null_values = null_values.loc[(null_values['Train Data']!=0) | (null_values['Test Data']!=0)] null_values = null_values.sort_values(by=['Train Data','Test Data'],ascending=False) print("Total missing values:",null_values.sum(),sep='\n') return null_values
Визуализация
Заключение и рекомендация:
Большинство домов Эймса находятся в ценовом диапазоне от 150 до 200 тысяч, в то время как более состоятельные люди могут рассчитывать заплатить до 350 тысяч, чтобы купить хорошо обставленные дома со всеми идеальными характеристиками, которые они хотят.
Что касается клиентов с ограниченным бюджетом, они, вероятно, в конечном итоге выберут дома со следующими характеристиками:
- Две семейные квартиры
- 1,5 ед.
- Жилой район с высокой плотностью
- Гравийная улица
- Низкое общее качество сборки
- 0 гараж
- 0 камин
Хотя жить в таком доме кажется слишком мрачным, предлагается, чтобы покупатели с ограниченным бюджетом могли продать свои дома для будущих инвестиций со следующими особенностями:
- По крайней мере, наличие одного камина (если их больше двух, цена продажи не изменится)
- Минимум один гараж (если не благоустроенный)
- Увеличьте большую жилую площадь
- Односемейный отдельно стоящий и конечный блок таунхауса
- 1 / 2 типа истории
Надеюсь, это поможет потенциальным агентам и покупателям лучше оценить свои бюджеты и продать свои дома с большей рентабельностью инвестиций (возврат инвестиций).