Original size 1140x1600

Анализ взаимосвязи причин депрессии у студентов

PROTECT STATUS: not protected
13

Тема, которую я решила проанализировать при помощи графиков, возможно, близка многим, поэтому было интересно рассмотреть различные аспекты возникновения депрессии и как это в целом коррелируется с некоторыми пунктами по типу работы и учебы. В ходе написания этого проекта многие гипотезы, о которых я думала, подтвердились, и нашлось много взаимосвязей.

big
Original size 1280x720
big
Original size 1920x1080

Мудборд

Сразу показалось, что внешний вид графиков должен быть исполнен в холодных оттенках, поэтому насмотревшись референсов, я подобрала тусклые синие и зеленые цвета, которые могли бы охарактеризовать тему.

big
Original size 1920x1080

Основные цвета

Сам датасет был найден на сайте kaggle.com, так как там достаточно много релевантных источников с хорошей выборкой. Данные собраны с 27,901 человек, которые приняли участие в опросе. В таблице есть информация про следующие составляющие исследования, которые я использовала в своем проекте: давление от учебы, количество сна, успеваемость по учебе, суицидальные мысли, финансовый стресс и так далее.

Данные были визуализированы через гистограмму, круговую диаграмму, горизонтальную и тепловую карту, так как удобнее всего интерпретировать информацию с помощью этих графиков, и нагляднее всего видна корреляция между переменными.

Обработка данных

В своем проекте я использовала следующие библиотеки:

1. Pandas — для загрузки и обработки данных из CSV-файла. 2. Matplotlib — для визуализации данных. 3. Seaborn — для построения более сложных графиков (тепловые карты) и стилизации. 4. Numpy — для работы с массивами чисел и в целом для числовых операций.

import pandas as pd import matplotlib.pyplot as plt import numpy as np import seaborn as sns from matplotlib.colors import LinearSegmentedColormap

data = pd.read_csv (r"C:\Users\Лиза\Documents\Student Depression Dataset.csv») data.head ()

В коде обычно использовать метод dropna (), чтобы проводилась чистка данных, так как многие операции не могут проводиться с пропущенными элементами. Например: suicidal_academic_data = data[['Have you ever had suicidal thoughts? ', 'Academic Pressure']].dropna ()

Groupby () — метод, который группирует данные по столбцам, чтобы быстро обобщать и далее агрегировать следующие операции (mean, sum, size). Пример применения: genetics_depression_pie = genetics_depression_data.groupby ('Family History of Mental Illness')['Depression'].mean ()

Функция map () использовалась мной, чтобы превращать категориальные данные в числовые, ее очень удобно использовать, когда есть ответы в таблице, как «да» или «нет». В моем случае это действительно полезно, так как многие данные составлены как раз из таких ответов. Пример: 'Family History of Mental Illness'].map ({'Yes': 1, 'No': 0})

Для преобразования данных из длинного формата с многочисленными строками и одинаковыми категориями в табличный вид с едиными значениями была использована функция privot_table из библиотеки Pandas. Также при помощи этого можно вставлять строки (индексы), колонки и значения. Под этой функцией собственно выделяются следующие аргументы: 1. Index — Это стобцы, которые становятся строками в таблице 2. Columns — Столбцы, которые становятся заголовками 3. Aggfunc — Функция агрегации строк для каждой группы 4. Fill value — А это просто значение, которое используется для заполнения пустых ячеек, в моем случае — 0 heatmap_data = financial_stress_depression_data.pivot_table ( index='Financial Stress', columns='Depression', aggfunc='size', fill_value=0

Внешний вид

Создавая темный фон на графике, я использовала dark_background, чтобы придать большего контраста графикам. В основе цветовой палитры лежали цвета синий (#4A6FA5), зеленый (#5C8D6B) и в тепловой карте добавился еще один — лиловый (#A084CA). Чтобы создать тексты на диаграммах, были записаны следующие команды: plt.title ('Название графика', color='white', fontsize=14) plt.xlabel ('Ось X', color='white', fontsize=12) plt.ylabel ('Ось Y', color='white', fontsize=12)

Названия столбцов расписываются по осям X и Y, чтобы они отображались в соответствующих местах. А легенду записывала через следующую команду: plt.legend (title='Категория', facecolor='black', edgecolor='white', fontsize=10, title_fontsize=11).

Где-то на фоне графиков можно увидеть полупрозрачную сетку (plt.grid (axis='y', linestyle='--', alpha=0.4, color='gray')), прозрачность добавлялась через alpha, чтобы улучшить читаемость текста.

Размеры графиков задавались таким образом, чтобы избежать слишком громоздких визуализаций или, наоборот, мелких: plt.figure (figsize=(x, y)), где x- ширина, а y — высота.

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

0

Распределение возраста по полу

Первый график был основан на вводных данных, и, исходя из них, можно понять, что большинству респондентов больше 18 лет, а сама выборка ограничивается примерно 35-ю годами. Больше всего мужчин 25-летнего возраста, а также женщин 20 лет.

0

Взаимосвязь сна и депрессии

Взаимосвязь между сном и депрессией определенно прослеживается. Если посмотреть на столбцы синего цвета (люди с депрессией), то можно заметить, что самая большая группа наблюдается там, где меньше пяти часов сна. Это может указывать на влияние недостатка сна, как фактор, который либо поддерживает нестабильность ментальной системы, либо является ее причиной. В случае с людьми без депрессии (зеленые столбцы) можно увидеть практически одинаковое распределение между количеством сна, но все же 7-8 часов лидирует. Качественный сон в таком количестве является нормой для здоровых людей.

0

Тепловая карта: Финансовый стресс и депрессия

Тепловая карта наглядно показывает, что с ростом переживаний по поводу финансов значительно влияет на вероятность появления депрессии, люди без финансового стресса, очевидно, реже подвергаются этому психическому расстройству. Это доказывает важность материальной стабильности, при нехватке которой возникают дополнительные проблемы.

0

Взаимосвязь генетики и развития депрессии

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

0

Связь между мыслями о самоубийстве и давлением от учебы

Большее количество людей, как оказалось, находясь под давлением из-за учебы, имели суицидальные мысли. Это может быть связано, как и с системой оценивания с поощрениями в виде скидок или грантов, из-за чего человек перестает адекватно воспринимать свои силы, так и с различными сложностями, косвенно касающимися самой учебы: плохие взаимоотношения с одногруппниками, преподавателями или давящая семья.

0

Связь между мыслями о самоубийстве и давлением от работы

Последний блок я решила точно так же сделать, только сравнить вместо учебы — работу. Здесь совсем обратная история, так как скорее всего на это еще влияет само количество людей, имеющих работу среди респондентов. Их было совсем небольшое количество, поэтому тяжело сказать, насколько релевантным будет этот график. Но, как мы видим, мысли о самоубийстве посещают людей реже, когда речь идет о работе.

Описание применения генеративной модели

В проекте были использованы следующие нейросети:

1. Kandinsky — для генерации обложки и одного изображения. промт 1: A man sits in a room, he looks anxious, only his black silhouette is visible, things and books are scattered around him and only a small lamp illuminates it all. Use colors — dark green #5C8D6B, dark blue #4A6FA5 промт 2: A bunch of pills are scattered on the table, next to them are notebooks with drops of tears smeared on them, a telephone, a glass of water and some garbage: an apple core, crumpled paper. Take a very dark, foggy photo. Ссылка на модель: https://t.me/kandinsky21_bot

2. Adobe color- помог сгенерировать цветовую палитру с референсов. Ссылка на сайт: https://color.adobe.com/ru/

3. ChatGPT — был использован в целях подбора библиотек и нескольких функций, которые помогли улучшить код. Ссылка на сайт: https://openai.com/index/chatgpt/

Ссылка на датасет и блокнот

Анализ взаимосвязи причин депрессии у студентов
13
Confirm your ageProject contains information not suitable for individuals under the age of 18
I am already 18 years old
We use cookies to improve the operation of the website and to enhance its usability. More detailed information on the use of cookies can be fo...
Show more