
Рубрикатор
—Вводная часть: 1. Обоснование выбора данных и их источник 2. Виды графиков —Этапы работы: 1. Обработка данных 1.1 Итоговые графики: a. Анализ данных b. Код c. Графики 2. Нейросети 3. Стилистика 4. Статистические методы
Выбор данных и источников
Данные описывают рынок аренды жилья в крупных городах Индии (Bangalore, Mumbai, Pune, New Delhi, Nagpur), что интуитивно понятно: тип жилья, город, площадь, количество комнат, меблировка и цена. Такая тематика позволяет формулировать естественные вопросы: где аренда дороже, чем отличаются квартиры и дома, как влияют спальни и меблировка на цену и т. д., что удобно для «изучающего и объясняющего» анализа. Структура данных удобна для Pandas и визуализации В таблице есть и категориальные признаки (property_type, city, furnishing), и числовые (area, beds, bathrooms, balconies, area_rate, rent), поэтому можно использовать разные типы графиков: barplot, boxplot, гистограммы, тепловые карты корреляций. Набор достаточно большой, чтобы увидеть реальные закономерности и выбросы, но при этом влезает в память и хорошо обрабатывается стандартными средствами Pandas.
Источник: https://www.kaggle.com
Виды графиков
Столбчатые диаграммы (barplot) Ящики с усами (boxplot) Гистограмма с KDE‑кривой Тепловая карта (heatmap) Круговая диаграмма (pie chart)
Обработка данных
-Разделение на flat and house
df = pd.read_csv («data.csv»)
# Извлечение типа недвижимости (flat/house) из house_type
df['property_type'] = df['house_type'].str.extract (r'(Flat|House)')
# Оставим только нужные колонки
df = df[['property_type', 'locality', 'city', 'area', 'beds', 'bathrooms', 'balconies', 'furnishing', 'area_rate', 'rent']]
# Проверим результат
print (df.head ())```
Итоговые графики
-сравнение средней аренды flat и house по городам.
import seaborn as sns
# Группировка по городу и типу недвижимости, вычисление средней аренды
summary = df.groupby (['city', 'property_type'])['rent'].mean ().round (2).reset_index ()
# Уникальная цветовая схема
custom_palette = {
'Flat': '<h3>2E86AB', </h3> синий
'House': '<h3>E07A5F' </h3> оранжевый
}
# Построение графика
plt.figure (figsize=(12, 7))
sns.barplot (data=summary, x='city', y='rent', hue='property_type', palette=custom_palette)
plt.title ('Средняя арендная плата по городам и типу недвижимости', fontsize=16, pad=20)
plt.xlabel ('Город', fontsize=12)
plt.ylabel ('Средняя арендная плата (INR)', fontsize=12)
plt.xticks (rotation=45)
plt.legend (title='Тип недвижимости')
plt.tight_layout ()
plt.show ()```

Уровень цен между городами • Mumbai имеет самую высокую среднюю аренду как для квартир, так и для домов; это самый дорогой рынок из показанных городов. • Bangalore и New Delhi занимают промежуточное положение, тогда как Nagpur и Pune заметно дешевле по средней аренде. Flat против House внутри города • Во всех показанных городах средняя аренда квартир выше, чем домов, то есть за возможность жить в многоквартирном комплексе (обычно в более центральных и развитых районах) платят премию. • Разница между flat и house особенно велика в Mumbai и Bangalore, что может говорить о высоком спросе на квартиры по сравнению с индивидуальными домами в крупных IT/деловых центрах.
Boxplot — показывает разброс аренды по количеству спален.
plt.figure (figsize=(10, 6))
sns.boxplot (data=df, x='beds', y='rent', palette='Set2')
plt.title ('Распределение аренды по количеству спален')
plt.xlabel ('Количество спален')
plt.ylabel ('Арендная плата (INR)')
plt.show ()```

Зависимость уровня аренды от спален • При увеличении количества спален медианная аренда в целом повышается: объекты с 4–5 и более спальнями заметно дороже, чем 1–2 комнатные. • Диапазон значений тоже расширяется: чем больше спален, тем больше роскошных и очень дорогих вариантов, что видно по «усовершенствованным» усам и множеству высоких выбросов. Наличие выбросов • Во всех категориях есть отдельные объекты с арендой сильно выше основной массы (точки далеко над ящиком), особенно у 3–5 спален, что говорит о премиальном сегменте жилья.
Barplot — сравнивает среднюю арендную плату по городам и меблировке.
summary_furnishing = df.groupby (['city', 'furnishing'])['rent'].mean ().round (2).reset_index ()
plt.figure (figsize=(12, 7))
sns.barplot (data=summary_furnishing, x='city', y='rent', hue='furnishing', palette='husl')
plt.title ('Средняя арендная плата по городам и типу меблировки')
plt.xlabel ('Город')
plt.ylabel ('Средняя арендная плата (INR)')
plt.xticks (rotation=45)
plt.legend (title='Меблировка')
plt.tight_layout ()
plt.show ()```

График показывает, как меблировка связана с уровнем аренды в разных городах. Влияние меблировки • Во всех городах furnished жильё имеет самую высокую среднюю арендную плату, затем идут semi furnished, а самым дешёвым является unfurnished; это демонстрирует «премию» за готовую меблировку. • Разрыв между furnished и unfurnished особенно заметен в Mumbai и Bangalore, то есть там арендаторы готовы платить существенно больше за полностью оборудованное жильё. Различия между городами • Mumbai остаётся самым дорогим рынком аренды при любом типе меблировки, за ним следует Bangalore, тогда как Nagpur и Pune заметно дешевле. • В New Delhi и Pune структура похожа: уровень аренды средний по сравнению с Mumbai и Bangalore, но влияние меблировки сохраняется тем же порядком (furnished > semi furnished > unfurnished).
Гистограмма — показывает распределение площади.
plt.figure (figsize=(10, 6))
sns.histplot (df['area'], bins=30, kde=True, color='skyblue')
plt.title ('Распределение площади недвижимости')
plt.xlabel ('Площадь (кв.м)')
plt.ylabel ('Количество объектов')
plt.show ()```

График показывает, как распределена площадь объектов в выборке и наличие экстремально больших площадей. Основная масса объектов • Большинство объектов имеют относительно небольшую площадь: пик гистограммы сосредоточен в левой части оси X (несколько сотен–пара тысяч кв.м), после чего частота резко падает. • Плавный спад высоты столбцов вправо и форма KDE кривой указывают на сильно правостороннее (right skewed) распределение: малые площади встречаются очень часто, большие — редко. Крупные и аномальные площади • Длинный «хвост» вправо (до десятков тысяч кв.м) говорит о наличии небольшого числа очень крупных объектов, например вилл или больших комплексов; они визуально мало влияют на гистограмму, но сильно увеличивают размах признака area. • Для дальнейшего анализа (например, расчёта средних) такие выбросы стоит учитывать отдельно или рассматривать лог преобразование площади, чтобы распределение стало ближе к нормальному.
Тепловая карта — демонстрирует корреляцию между числовыми признаками.
numeric_df = df[['area', 'beds', 'bathrooms', 'balconies', 'area_rate', 'rent']]
plt.figure (figsize=(8, 6))
sns.heatmap (numeric_df.corr (), annot=True, cmap='coolwarm', center=0)
plt.title ('Тепловая карта корреляции числовых признаков')
plt.show ()```

График показывает, какие числовые признаки сильнее всего связаны друг с другом и с арендной платой. Связь между характеристиками квартиры • Наиболее сильная корреляция наблюдается между beds и bathrooms (~0.85): чем больше спален, тем больше ванных комнат, то есть это взаимосвязанные параметры размера и уровня комфорта жилья. • area также заметно коррелирует с beds и bathrooms (порядка 0.5), что логично: большие по площади объекты обычно имеют больше комнат. Факторы, связанные с арендой • Арендная плата rent умеренно связана с bathrooms, area_rate и area (коэффициенты около 0.4–0.53), то есть дороже обходятся более просторные объекты с большим числом санузлов и высокой ставкой за площадь. • Количество балконов почти не связано с арендой (корреляция ~0.18) и с другими признаками, что говорит о слабом влиянии этого параметра на цену в данном датасете.
Круговая диаграмма — отображает долю квартир и домов.
property_counts = df['property_type'].value_counts ()
plt.figure (figsize=(8, 8))
property_counts.plot (kind='pie', autopct='%1.1f%%', startangle=90, colors=['<h3>2E86AB', '</h3>E07A5F'])
plt.title ('Доля квартир и домов')
plt.ylabel ('')
plt.show ()```

График показывает структуру выборки по типу недвижимости — квартир значительно больше, чем домов. • Квартиры (Flat) составляют около 79 % всех объявлений, то есть почти 4 из 5 объектов в датасете — это именно квартиры. • Дома (House) занимают лишь примерно 21 %, что говорит о меньшей представленности индивидуальных домов на рынке аренды по сравнению с многоквартирным фондом в рассмотренных городах.
Нейросети
Стилистика
Оформление лонгрида выполнено в монохромных оттенках для фокуса внимания читателя на графиках и статистике, важных для понимания исследования. Таким образом, удается правильно расставить акценты в дизайне публикации, «выделяя» необходимые части работы.
Статистические методы
Средние значения (mean) • При помощи groupby (…).mean () считалась средняя арендная плата по городам, типам недвижимости и меблировке; это оценка центра распределения, чувствительная к выбросам. • Такие средние использовались в столбчатых диаграммах (barplot), где по оси Y откладывалась именно средняя аренда для каждой группы. Корреляция (коэффициент Пирсона) • Функция numeric_df.corr () считает корреляцию Пирсона между числовыми признаками (area, beds, bathrooms, balconies, area_rate, rent), измеряющую силу и направление линейной связи (от −1 до 1). • На тепловой карте было видно, какие признаки сильнее всего связаны с арендой и друг с другом (например, сильная корреляция beds–bathrooms). Группировка и агрегирование (split–apply–combine) • Метод groupby реализует подход «разбить–применить–объединить»: данные разбивались на группы по city, property_type, furnishing, затем к каждой группе применялась функция mean, count и т. п. • Результаты агрегирования использовались для построения всех сравнительных barplot ов (по городам, типу жилья, меблировке). Ящики с усами (boxplot) • Boxplot визуализирует квартильную структуру распределения: медиану, нижний и верхний квартили, диапазон и выбросы. • В твоём графике «Распределение аренды по количеству спален» этот метод позволил сравнить центр и разброс аренды для разных значений beds и увидеть выбросы в премиальном сегменте. Гистограмма и KDE • Гистограмма аренды и площади показывает частоты наблюдений в интервалах значений, а kde=True добавляет оценку плотности распределения, сглаживающую форму. • Такой подход позволил выявить правостороннюю асимметрию площади (много маленьких объектов и длинный хвост больших).