An open API service indexing awesome lists of open source software.

https://github.com/anicatpro/nir

ИжГТУ. Уч. практика_НИР (Леонов М.В.) - Анализ стоимости недвижимости
https://github.com/anicatpro/nir

home-work

Last synced: 11 months ago
JSON representation

ИжГТУ. Уч. практика_НИР (Леонов М.В.) - Анализ стоимости недвижимости

Awesome Lists containing this project

README

          

# Анализ стоимости недвижимости в г.Барнаул

Проект был разработан студентом гр.Б22-191-1з Афанасьевым П.Ю. в рамках учебной практики "Уч. практика_НИР" под руководством Леонова М.В.

Этот проект включает два скрипта:

1. **Парсинг данных с сайта Avito:** с использованием Selenium, данные о недвижимости (цена, метраж, этаж и т.д.) извлекаются и сохраняются в базу данных SQLite.
2. **Анализ данных:** данные анализируются с использованием Pandas и Scikit-learn для построения линейной регрессии и других статистических тестов.

## Основные функции

- **Парсинг данных:** сбор информации о недвижимости с платформы Avito и сохранение в SQLite.
- **Анализ данных:** включает обработку данных, статистический анализ и построение моделей машинного обучения для оценки факторов, влияющих на стоимость недвижимости.
- **Визуализация:** предоставляет графики и диаграммы для лучшего понимания распределений и зависимостей в данных.

## Структура базы данных

- **properties** — таблица данных о недвижимости:
- **id** — уникальный идентификатор записи.
- **price** — цена недвижимости.
- **total_area** — общая площадь.
- **living_area** — жилая площадь.
- **rooms** — количество комнат.
- **floor** — этаж.
- **total_floors** — всего этажей в здании.
- **year** — год постройки.
- **balcony** — наличие балкона.
- **condition** — состояние жилья.
- **type** — тип недвижимости.
- **district** — район.
- **url** — ссылка на объявление.

## Установка

1. Клонируйте репозиторий:
```bash
git clone https://github.com/AniCatPro/NIR.git
```

2. Перейдите в каталог проекта:
```bash
cd NIR
```

3. Установите необходимые зависимости:
```bash
pip install pandas numpy scikit-learn scipy matplotlib seaborn statsmodels ipython selenium webdriver-manager
```

4. Запустите парсинг данных:
```bash
python pars_sql.py
```

5. Запустите анализ данных:
```bash
python test2.py
```

## Визуализация данных

### 1. Гистограмма распределения цен
На данной гистограмме представлено распределение цен на квартиры. Большинство объектов концентрируются в среднем ценовом диапазоне, что говорит о популярности среднемаркетных квартир на рынке. Мы видим значительное снижение частоты для более высоких цен, что указывает на редкость более дорогих объектов. Это распределение типично для жилой недвижимости и отражает предпочтения покупателей.

Гистограмма распределения цен

### 2. Коробчатая диаграмма (box plot)
Коробчатая диаграмма предоставляет визуализацию центральной тенденции и разброса цен на квартиры. Медиана цены расположена ниже среднего уровня, что указывает на наличие более дешевых объектов. Выбросы, представленные точками выше "усов", свидетельствуют о наличии нескольких элитных объектов с ценами, значительно превышающими основную часть данных. Это важно учитывать при анализе, так как такие объекты могут искажать общую картину.

Коробчатая диаграмма

### 3. Диаграмма рассеяния цены и площади
Диаграмма рассеяния демонстрирует положительную корреляцию между площадью квартиры и её ценой. Как видно из графика, с увеличением площади цена также увеличивается, что соответствует ожиданиям. Эта информация полезна для понимания того, как размер объекта влияет на его рыночную стоимость и может быть использована при стратегическом планировании цен.

Диаграмма рассеяния цены и площади

### 4. Матрица корреляций
Матрица корреляций отображает взаимосвязи между разными переменными, такими как цена, этаж и логарифмическое преобразование расстояния. Из всех переменных `log_distance` демонстрирует слабую корреляцию с ценой, что может указывать на его меньшую значимость в текущем наборе данных. Это подчеркивает необходимость пересмотра влияния этой переменной на цену или поиск дополнительных факторов, которые могут лучше объяснять вариабельность.

Матрица корреляций

### 5. Гистограмма распределения ошибок
Гистограмма ошибок иллюстрирует точность модели путем отображения разницы между прогнозированными и фактическими ценностями. Большинство ошибок сосредоточено около нуля, что говорит о том, что модель предсказывает цены с высокой точностью. Однако присутствие ошибок указывает на области, где модель все еще может быть улучшена.

Гистограмма распределения ошибок

### 6. Диаграмма прогнозных vs. фактических значений
Данная диаграмма сравнивает прогнозируемые цены с фактическими данными. Большинство точек расположено близко к диагональной линии, что свидетельствует о высоком уровне точности модели. Однако некоторые отклонения указывают на возможность улучшений, особенно для более дорогих объектов. Эта диаграмма полезна для визуальной оценки производительности модели и позволяет быстро идентифицировать несоответствия.

Диаграмма прогнозных и фактических значений

## Заключение

Проект показал способность парсинга данных и их дальнейшего анализа для выявления тенденций на рынке недвижимости. Применённые методы позволяют оценить влияние различных параметров на стоимость объектов.