Original size 1140x1600

Анализ заболеваний Альцгеймером

PROTECT STATUS: not protected
3

Концепция

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

big
Original size 1183x568

При работе над проектом я вдохновилась образом разлетающихся частиц и пикселей, которые передают саму потерю воспоминаний. Черные, серые и голубые тона передают отчужденность от мира, одиночество и пустоту, а шрифт «‎DejaVu Sans» в тонком начертании подчеркивает уязвимость людей с Альцгеймером‎. В свои графики я хотела добавить именно эти ощущения.

big
Original size 1328x546

Для анализа использован Alzheimer’s Disease Dataset с сайта kaggle.com. Датасет содержит обширную медицинскую информацию 2 149 пациентов, у которых был выявлен Альцгеймер. Набор данных включает демографические данные, факторы образа жизни, историю болезни, клинические измерения, когнитивные и функциональные оценки, симптомы и диагноз болезни Альцгеймера. Для визуализации данных я выбрала гистограмму (по ней четко можно увидеть статистику по возрасту, в который появляется болезнь), тепловую диаграмму (можно увидеть явную взаимосвязь симптомов), точечную диаграмму (подчеркивает средний результат тестов по возрасту и здоровью), круговую диаграмму-кольцо (наглядно видно распределение симптомов) и линейную диаграмму (четко видно насколько факторы риска влияют на появление болезни). Также хочу отметить, что я хотела добавить больше визуального стиля в работу, поэтому в первом и последнем графике добавлены частицы, которые также имеют смысловую нагрузку для анализа.

Обработка данных и визуализация

Сначала я приступила к импорту необходимых библиотек: numpy, matplotlib.pyplot, pandas и seaborn. Затем я считала скаченный csv датасет и подключила шрифт.

Original size 1328x346

Далее я приступила к созданию гистограммы для распределение пациентов по возрасту. Сначала я добавила переменную bin_width, которая определяет ширину каждого интервала в гистограмме, поставила ей значение — 2. Создала массив bins для границ бинов от минимального до максимального возраста с интервалом 2. Затем, с помощью np.histogram (), подсчитала количество пациентов в каждом бине.

Original size 1328x166

Далее я настроила внешний вид графика: создала figure, установила черный фон (facecolor="black») и скорректировала цвета осей, сделав их белыми для контраста. Чтобы убрать лишние элементы, отключила верхнюю и правую рамки. Основную часть гистограммы я строила с помощью ax.bar (), где ширину столбцов я немного уменьшила (bin_width * 0.9), белый цвет с бирюзовыми контурами сделал график стильным и контрастным. Идею с таким оформлением преложил Chat GPT 4, так как я попросила улучшить стилизацию гистограммы.

Original size 1328x526

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

Original size 1328x196

После этого я подписала оси, добавила заголовок, легенду и сетку, чтобы график был понятным

0

Гистограмма. Распределение пациентов по возрасту

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

Тепловая карта

Далее я создала тепловую карту, чтобы визуализировать взаимосвязь между основными симптомами болезни Альцгеймера. Сначала я определила цветовую палитру turquoise_cmap, создав градиент от темного бирюзового к светлому. Это помогло сделать тепловую карту более выразительной. Затем я подготовила сам график: установила черный фон для фигуры и осей, чтобы создать стильный контраст. После этого я выбрала только те симптомы, которые действительно присутствовали в датасете, чтобы избежать ошибок. На основе этих данных я вычислила корреляционную матрицу, которая показывала, насколько тесно связаны между собой разные симптомы. Я нанесла эту матрицу на тепловую карту с помощью seaborn.heatmap, добавив аннотации, сетку и цветовую шкалу для удобства интерпретации. Также я стилизовала подписи осей, убрала верхнюю и правую границы, чтобы сделать визуализацию чище.

0

Тепловая карта. Корреляция между симптомами

Преобладающие темные оттенки бирюзового указывают на умеренную корреляцию. Симптомы могут встречаться вместе, но не всегда. Это означает, что симптомы не взаимосвязаны напрямую друг с другом. Анализ корреляции симптомов помог выявить, что паттерны развития болезни размыты и тяжело выявить закономерность проявления симптомов болезни.

Точечная диаграмма

Дальше я создала диаграмму, которая показывает зависимость среднего результата теста MMSE от возраста пациентов, разделяя их на группы по диагнозу. Сначала я определила размер и цвет фона графика, выбрав черный цвет, чтобы создать контраст с данными. Затем я настроила оси: скрыла верхнюю и правую границы диаграммы, а левые и нижние линии сделала белыми для лучшей читаемости. Я добавила сетку, использовав серый пунктир, чтобы она не перегружала график, но помогала ориентироваться. После этого я сгруппировала данные по возрасту и диагнозу, вычислив среднее значение MMSE для каждой возрастной группы. Чтобы визуализировать данные, я применила seaborn.scatterplot, выбрав разные цвета для здоровых пациентов и пациентов с болезнью Альцгеймера — белый и бирюзовый соответственно. Я также добавила белые контуры к точкам, чтобы сделать их более четкими. Далее я настроила оси, добавила подписи.

0

Точечная диаграмма. Средний результат MMSE по возрасту

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

Круговая диаграмма

Сначала я выбрала симптомы, которые связаны с болезнью Альцгеймера, затем я рассчитала среднюю выраженность каждого из этих симптомов среди всех пациентов, используя метод .mean (). Это позволило определить, какие из них встречаются чаще. Далее я определила цветовую палитру, используя оттенки бирюзового, чтобы создать визуально приятную и последовательную диаграмму. Для отображения данных я использовала круговую диаграмму (ax.pie ()), где: labels — подписала сектора названиями симптомов, autopct — добавила проценты, чтобы показать долю каждого симптома, colors — задала цвета, соответствующие моей палитре, wedgeprops — настроила белую окантовку сегментов для лучшей читаемости. Чтобы сделать диаграмму более стильной, я добавила в центр черный круг (plt.Circle ()), получилось кольцо.

0

Круговая диаграмма. Распределение симптомов среди пациентов

Диаграмма показывает, какие симптомы болезни Альцгеймера наиболее выражены среди пациентов. Забывчивость и путаница превалируют среди других симптомов, дезориентация и проблемы с выполнением задач имеют схожий процент проявления. Общий вывод — болезнь влияет на различные аспекты мышления, поведения и ориентации в пространстве, но потеря памяти всё же преобладает.

Линейная диаграмма

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

0

Линейная диаграмма. Влияние медицинской истории на проявление болезни

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

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

Для визуального стиля, генерации изображений и обложки проекта, был использован Recraft.ai. Для визуализации и оптимизации графиков я использовала Chat-GPT 4.0. Он помог решить проблемы с несколькими ошибками в коде и предложил идеи по составлению графиков.

Промты: https://docs.google.com/document/d/1cvMQeItMTl8QRqh4qvy6Wsd8tmS9bF0EoO9AynjEGPs/edit?usp=sharing

Ссылки на модели: Recraft  Chat-GPT 4.0

Список источников

[1] Загрузка датасета с kaggle.com. (URL: https://www.kaggle.com/datasets/rabieelkharoua/alzheimers-disease-dataset) Просмотрено: 17.03.2024.

Анализ заболеваний Альцгеймером
3
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