Рубрикатор
1. Вводная часть 2. Этапы работы 3. Итоговые графики 4. Вывод 5. Описание применения генеративной модели
Вводная часть
Для анализа я выбрала данные из набора "Healthcare Survey" с сайта kaggle.com. Этот набор данных включает информацию о различных аспектах здравоохранения, таких как доступность медицинских услуг, удовлетворенность пациентов, а также демографические данные респондентов. Мне было интересно проанализировать эти данные, так как тема здоровья является одной из самых важных и актуальных тем. Здоровье – ключевой фактор качества жизни, и с помощью анализа можно выявить важные взаимосвязи: например, как уровень дохода или образования влияет на состояние здоровья.
Я решила сделать разные виды графиков, которые помогли наглядно представить конкретные данные, выбранные мной для анализа. Распределение общего состояния здоровья – гистограмма. Связь уровня образования и здоровья – столбчатая диаграмма. Связь физической активности и здоровья – диаграмма рассеяния. Зависимость уровня дохода от возраста – линейный график. Распределение медицинского образования – круговая диаграмма.
Этапы работы
Я решила стилизовать графики в оттенках синего. Этот цвет является успокаивающим и подходит для визуализации данных, связанных с вопросом здоровья.
Для начала нужно было подготовить данные и обработать пропущенные значения.
import pandas as pd df = pd.read_csv('health_dataset.csv') df.head()
missing_values = df.isnull().sum() missing_values[missing_values > 0]
В данных есть пропущенные значения только в колонке Smoked - 110 значений. Заменим их модой.
df["Smoked"] = df["Smoked"].fillna(df["Smoked"].mode()[0])
Проверим, что пропусков больше нет
df.isnull().sum().sum()
Данные готовы к визуализации
import matplotlib.pyplot as plt import seaborn as sns
Настроим стиль визуализации sns.set_style("whitegrid") plt.figure(figsize=(8, 5))
Первая визуализация показывает распределение общего состояния здоровья людей
sns.histplot(df["Gen_health_state"], bins=5, kde=True, color="royalblue")
plt.title("Распределение общего состояния здоровья", fontsize=14) plt.xlabel("Общее состояние здоровья (1 - очень плохое, 5 - отличное)", fontsize=12) plt.ylabel("Количество людей", fontsize=12)
plt.show()
Далее я посмотрела, как уровень образования влияет на общее состояние здоровья у человека.
plt.figure(figsize=(8, 5))
sns.barplot(x=df["Edu_level"], y=df["Gen_health_state"], estimator=lambda x: x.mean(), palette="Blues")
plt.title("Влияние уровня образования на общее состояние здоровья", fontsize=14) plt.xlabel("Уровень образования (1 - низкий, 5 - высокий)", fontsize=12) plt.ylabel("Средняя оценка здоровья", fontsize=12)
plt.show()
Выяснилось, что люди с более высоким уровнем образования, как правило, оценивают свое здоровье выше.
Теперь изучим связь между физической активностью и общим состоянием здоровья.
plt.figure(figsize=(8, 5))
sns.scatterplot(x=df["Physical_vigorous_act_time"], y=df["Gen_health_state"], alpha=0.5, color="royalblue")
plt.title("Связь физической активности и здоровья", fontsize=14) plt.xlabel("Время интенсивной физической активности (минуты)", fontsize=12) plt.ylabel("Оценка здоровья", fontsize=12)
plt.show()
Диаграмма показала, что люди, занимающиеся более интенсивной физической активностью, чаще имеют более высокие оценки здоровья.
Линейный график показал, что уровень дохода увеличивается с возрастом до определенного момента, а затем начинает снижаться. Это может отражать карьерный рост и выход на пенсию.
plt.figure(figsize=(8, 5))
sns.lineplot(x=df["Age"], y=df["Total_income"], color="darkblue")
plt.title("Зависимость уровня дохода от возраста", fontsize=14) plt.xlabel("Возраст", fontsize=12) plt.ylabel("Уровень дохода (категории)", fontsize=12)
plt.show()
Построим круговую диаграмму, чтобы посмотреть, как распределяется медицинская страховка среди людей.
plt.figure(figsize=(6, 6))
insurance_counts = df["Insurance_cover"].value_counts() labels = [f"Категория {i}" for i in insurance_counts.index]
plt.pie(insurance_counts, labels=labels, autopct="%1.1f%%", colors=sns.color_palette("Blues", len(insurance_counts)))
plt.title("Распределение медицинского страхования", fontsize=14)
plt.show()
Большая часть населения имеет страховое покрытие, однако есть исключения.
Итоговые графики
Вывод
Благодаря анализу данных, мы поняли:
- Большинство людей оценивают свое здоровье как хорошее или отличное.
- Состояние здоровья зависит от уровня образование. Чем выше образование, тем здоровье лучше.
- Физическая активность положительно сказывается на уровне здоровья.
- Уровень дохода сначала растет с возрастом, доходит до определенного пика, после снижается.
- Медицинское страхование имеется у большинства.
Описание применения генеративной модели
Для анализа данных использовалась нейросеть https://chatgpt.com









