Форум врачей-аспирантов

Здравствуйте, гость ( Вход | Регистрация )

> Вопрос по анализу данных
Alex
сообщение 3.04.2007 - 19:02
Сообщение #1





Группа: Пользователи
Сообщений: 6
Регистрация: 3.04.2007
Пользователь №: 4028



Уважаемые господа, можно ли обратиться к Вам за помощью?
Имеется база данных, основанная на анкетировании более 1500 человек, в которой категориально (да - нет) отражены такие симптомы как головные боли, боли в пояснице, боли в грудной клетке и пр. (более 30), на их основе вычисленный индекс состояния здоровья (непрерывная величина от 0 до 1). Для каждого случая естественно записаны предикты, такие как населенный пункт, возраст (или возрастная группа), пол, профессия, привычки, группа риска (на основе воздействия химических загрязнителей поллютантов - 3 группы) и пр.
Стоит задача выявить предикторы вызывающие значимое повышение отношение шансов наблюдаемых симптомов, а также оценить комплексное влияние этих факторов (предикторов).

Попытка провести данный анализ методом логистической регрессии с помощью одноименного модуля epi info 2000 (стандартная программа используемая в эпидемиалогии и лежащая в свободном доступе) дает неплохие результаты при
учете только одного из перечислденных факторов. При учете нескольких взаимодействующих факторов, получаем
неподдающиеся интерпретации результаты, что может быть вызвано однако сильной взаимосвязью предикторов, которые возможно необходимо минимизировать (что не хотелось бы, из-за потери части информации).

В связи с этим хотелось бы обратиться к Вам с вопросом, может имеет смысл воспользоваться каким-нибудь другим методом анализа?

Будем рады любому ответу...

P.S. Пользуем программу Statistica 6
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
 
Открыть тему
Ответов
плав
сообщение 7.04.2007 - 16:05
Сообщение #2





Группа: Пользователи
Сообщений: 1013
Регистрация: 4.10.2006
Пользователь №: 1933



Ну, если кратко. Для анализа бинарных переменных в данном случае ничего лучше логистической регрессии не придумать. Другое дело, что Вы измеряли показатели в определенных местах, т.е. у Вас была т.н. кластерная выборка. Кластерная выборка нарушает основное предположение при анализе подобных данных о том, что наблюдения между собой не коррелируют (а люди из одной деревни имеют большую вероятность контакта/отсутствия контакта с токсикантами). В этой ситуации используется "зависимая логистическая регрессия" (conditional logistic regression, см, например, http://www.gseis.ucla.edu/courses/ed231c/notes2/clogit.html), где деревня идет именно как показатель кластера. Насчет наличия этого типа регрессии в Statistica и EpiInfo не знаю, профессиональные пакеты типа SPSS, SAS и Stata ее имеют.
Далее. Надо обязательно проверить, чтобы факторы с более чем 2-я уровнями были перекодированы. Например, у Вас есть переменная "возрастные группы" - 3 значения (например, молодые, среднего возраста и старые). Соответственно, надо сделать две переменных, например - ср. возраст (mAge) и старые (oAge). Кодировка будет выглядеть примерно так:
группа "Возраст" mAge oAge
молодые 1 0 0
ср. возраст 2 1 0
старые 3 0 1
В анализе используете mAge и oAge. При этом переменной для молодых нет, эта группа называется базовой и все расчеты ведутся относительно нее.
Очень опасны пропуски, поскольку когда Вы включаете более двух переменных, то наблюдения содержащие пропуски хотя бы по одной из них из анализа выбрасываются (может быть причиной Ваших проблем). Решение - замена отсутствующий значений на средние по группе (нивелирует различия, но зато используется весь массив данных). Есть и другие методы, но они все одинаково плохи.
Другие причины - "рассыпания" могут быть тривиальны - токсиканты не оказывают воздействия, а все различия между пациентами связаны с другими факторами риска (собственно, для этого и делается многомерный анализ).
Другие перечисленные Вами виды анализа здесь не подходят (по причине кластерной выборки), а непараметрика для многомерных моделей не разработана (на самом деле логистическая регрессия - полупараметрическая модель). Можно попробовать сделать парный анализ - взять местность с высокой нагрузкой токсиканатми и местность с низкой. Пациенту Х из местности с высокой подобрать пациента Х1 из местности с низкой по полу, возрасту, курению, потреблению алкоголя. Сделать такие пары для большей части пациентов (рассчитывайте, что удастся сделать пары для 35% всех наблюдений). Затем проанализируйте различия в индексе здоровья и т.п. в этих парах.
Что касается индекса здоровья, то, повторюсь, я бы либо анализировал его логарифм и затем сделал множественную линейную регрессию, либо использовал бы общую линейную модель с логит-проеобразованием (в стате, см http://www.ats.ucla.edu/STAT/stata/faq/proportion.htm, аналогичную модель можно сделать при помощи PROC GENMOD в SAS). Неплохое введение в теорию анализа ограниченных и дискретных величин можно найти тут (http://division.aomonline.org/rm/1997_forum_regression_models.html). При этом все проблемы, связанные с кластерным характером выборки остаются.
Иными словами анализ в общих чертах:
1) Анализ данных на наличие пропусков и чистка базы данных
2) Преобразование качественных переменных с несколькими уровнями в наборы из переменных-пустышек (как показано выше с возрастом)
3) Логистический регресионный анализ симптомов относительно факторов риска (по отдельности) выявление значимых факторов риска (зависимая логистическая регрессия)
4) Множественная логистическая регрессия включающая все значимые факторы риска
5) Логарифмирование индекса здоровья
6) Множественная линейная регрессия с логарифмом индекса здоровья как зависимой переменной и ФР как предикторами.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 

Сообщений в этой теме


Добавить ответ в эту темуОткрыть тему