code-review-101-hitnes
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
4 месяца назад
README.md
Анализ стоимости жилья в Калифорнии (California Housing Dataset)
Описание проекта
Цель проекта — провести exploratory data analysis (EDA) на датасете California Housing, чтобы изучить распределение стоимости жилья и зависимость от различных признаков. Проект реализован на Python с использованием , pandas и numpy.matplotlib
Источник данных
Данные взяты из sklearn: .fetch_california_housing
Датасет содержит 20640 записей и 9 колонок (8 признаков и 1 целевая переменная):
| Колонка | Описание |
|---|---|
| Средний доход в блоке (в десятках тысяч долларов) |
| Средний возраст домов в блоке |
| Среднее количество комнат на дом |
| Среднее количество спален на дом |
| Население блока |
| Среднее количество людей на дом |
| Широта блока |
| Долгота блока |
| Целевая переменная — средняя стоимость домов в блоке (в сотнях тысяч долларов) |
Задачи проекта
- Загрузить данные и подготовить DataFrame.
- Провести анализ целевой переменной (
).MedHouseVal - Провести анализ статистики признаков.
- Визуализировать распределения целевой переменной и признаков.
- Создать scatter plots признаков против целевой переменной.
- Провести анализ корреляций и визуализировать их.
Статистика целевой переменной
- Средняя стоимость дома ≈ $207,000.
- Большинство домов сосредоточены в диапазоне 257,000.
- Максимальное значение 5 (обрезка данных в датасете).
Статистика признаков
| Признак | Среднее | Стд | Мин | Макс |
|---|---|---|---|---|
| MedInc | 3.87 | 1.90 | 0.50 | 15.0 |
| HouseAge | 28.64 | 12.59 | 1 | 52 |
| AveRooms | 5.43 | 2.05 | 2.14 | 141.0 |
| AveBedrms | 1.10 | 0.20 | 0.33 | 4.0 |
| Population | 1425.48 | 1132.46 | 3 | 35682 |
| AveOccup | 3.07 | 2.04 | 0.33 | 1243.0 |
| Latitude | 35.63 | 2.14 | 32.5 | 42.0 |
| Longitude | -119.57 | 2.00 | -124.3 | -114.3 |
Визуализации
1. Распределение целевой переменной
- Гистограмма с линией среднего значения.
- KDE график (оценка плотности).
- Вывод: большинство домов имеют стоимость ниже $300,000, распределение смещено вправо.
2. Распределение признаков
-
Все признаки построены на гистограммах.
-
Особенности:
иMedIncимеют почти нормальное распределение.HouseAgeиAveRoomsимеют длинный хвост из-за блоков с большим количеством комнат или жителей.AveOccup
3. Scatter plots признаков против целевой переменной
-
Показано, как каждый признак влияет на
.MedHouseVal -
Выводы:
- Средний доход (
) сильно положительно коррелирует с ценой.MedInc - Широта (
) и долгота (Latitude) показывают географическую зависимость.Longitude
- Средний доход (
4. Корреляции
-
Горизонтальная диаграмма коэффициентов корреляции с
.MedHouseVal -
Топ-признаки по корреляции:
: +0.69MedInc: -0.14Latitude: -0.05Longitude- Остальные признаки слабее коррелируют с ценой.
Выводы
- Наибольшее влияние на стоимость жилья оказывает средний доход в районе.
- Географическое положение (широта/долгота) также имеет значение.
- Большинство признаков имеют относительно слабую корреляцию с ценой домов.
- Данные имеют несколько выбросов, особенно по количеству комнат и населения.
Технологии
- Python 3.10+
- pandas, numpy
- matplotlib
- sklearn (fetch_california_housing)
Инструкция по запуску
- Установить Python 3.10+
- Установить зависимости:
- Запустить скрипт:
- Графики сохранятся в текущей директории:
- 05_housing_target_distribution.png
- 05_housing_target_distribution_kde.png
- 05_housing_features_distribution.png
- 05_housing_features_vs_target.png
- 05_housing_correlation_bars.png