Меню
Главная
Авторизация/Регистрация
 
Главная arrow Математика, химия, физика arrow Анализ показателя реадмиссии

Предварительный анализ данных

Прежде всего, имеющиеся данные в формате csv были загружены в среду разработки с помощью модуля библиотеки pandas, функции pandas.read_csv. Первым шагом в подготовке данных для анализа было изучение переменных на количество недостающих данных. В изначальных данных все ситуации отсутствия информации по записи обозначались через «?», таким образом, чтобы выявить все пропуски был произведен подсчет значений, равных «?» по каждому из параметров. Ниже приведены параметры, с полученными значениями процента недостающих данных: раса - 2%; вес - 97%; страховая компания - 40%; отделение, в которое поступил пациент - 49%; дополнительный вторичный диагноз - 1%. В связи с большим количеством пропусков, переменные вес, страховая компания и отделение были исключены из анализа, так как не предоставляется возможным с помощью методов исключения шумов из выборки заполнить значениями недостающие данные. Недостающая информация для расы и дополнительного вторичного диагноза была заполнена искусственно, используя подстановку значения медианы по данным параметрам из всей имеющейся выборки.

Далее, был проведен анализ выбросов по оставшимся параметрам с помощью boxplot, который показывает медиану выборки, максимальное и минимальное значение, верхний и нижний квартили, а также выбросы. Например, переменная возраста имеет один выброс, который, учитывая размер выборки не влияет на качество предсказаний с использованием данного параметра, а, значит, возраст можно учитывать при анализе (см. рис. 2, 3, 4):

BoxPlot для переменной «Возраст»

Рисунок 2. BoxPlot для переменной «Возраст»

В ходе данного анализа были выявлены две переменные с большим количеством выбросов, которые влияют на качество работы модели - дополнительный вторичный диагноз и прием росиглитазона:

BoxPlot для переменной «Прием росиглитазона»

Рисунок 3. BoxPlot для переменной «Прием росиглитазона»

BoxPlot для переменной «Дополнительный вторичный диагноз»

Рисунок 4. BoxPlot для переменной «Дополнительный вторичный диагноз»

Большое количество выбросов для дополнительного вторичного диагноза может быть объяснено тем, что данная графа в карте пациента является обязательной для заполнения, но считается многими врачами второстепенной, в связи с чем заполняется не всегда корректно. Прием росиглитазона в свою очередь может объясняться некорректным сбором данных из анкет пациентов, так как по умолчанию данная переменная должна принимать только два значения - 0 (в случае, если лекарство не принимается) и 1 (в случае, если больной принимает данный медикаментозный препарат). Как можно увидеть на графике, значение этой переменной колеблется от 0 до 30, что говорит о некорректности данных. Дополнительный вторичный диагноз и прием росиглитазона были исключены из дальнейшего анализа и построения модели на основании проведенного анализа.

По результатам обнаружения выбросов, а именно результатов, связанных с переменной «прием росиглитазона» было принято решение проверить валидность данных. Для этого из каждого параметра были выбраны уникальные значения (удалены дубликаты), которые были сопоставлены с областью значений для данных переменных. В результате данного анализа не было выявлено ни одного параметра с невалидными значениями.

Далее, был проведен анализ влияния поставленных диагнозов на результат реадмиссии, было выявлено, что заболевания, относящиеся к одной группе в классификации ICD9 имеют примерно одинаковую степень влияния на зависимую переменную. Поэтому, было принято решение, искуственно заменить коды заболеваний на коды групп, соответственно 1 для заболеваний группы инфекционных и паразитарных заболеваний, 2 - новообразования и так далее.

Следующим шагом был проведен анализ one-way ANOVA, позволяющий определить корреляцию переменных между собой. В Python данный метод реализуется с помощью библиотеки scipy, модуля stats, функции f_oneway. Данный метод на входе запрашивает наименования параметров, между которыми необходимо определить статистическую значимость, а на выходе возвращает значения f-value (F-критерий Фишера) и p-value (вероятность ошибки первого рода). Полученное f-value сравнивается с табличным значением F, в случае, если фактическое F меньше, чем F табличное, то это показывает ненадежность выбранной модели регрессии и низкое качество предсказаний. Табличное значение F равно 0.98 (k1 - количество факторов = 47, k2 - количество наблюдений-количество факторов 101720, уровень значимости - 0,05), полученное с помощью ANOVA значение равно 17.55, соответственно модель можно признать статистически значимой. Для окончательного подтверждения возможности использовать оставшиеся параметры для построения модели, необходимо сравнить полученное p-value с уровнем значимости, выбранным для модели. P-value = 0.15, уровень значимости равен 0,01, так как p-value больше уровня значимости, модель можно принять и использовать все, неисключенные до этого из анализа переменные.

После проделанных выше шагов данные готовы к использованию в построении модели. Как уже было сказано выше, для обучения модели будут использоваться следующий методы - рандомный лес, метод k-блиажйших соседей, логистическая регрессия и наивный баесовский классификатор. Данные методы будут применены к обучающей выборке, составляющей 80% от имеющихся данных, результат их работы проверен на тестовой выборке, составляющей оставшиеся 20%. Прежде, чем применять методы к данным, необходимо выбросить из выборки параметры, которые на предыдущих шагах были исключены из анализа, а также целевую переменную (readmitted) и параметры, представляющие собой id пациента и визита.

train = diabetic_data.drop(['weight', 'payer_code', 'patient_nbr', 'encounter_id', 'diag_3', 'rosiglitazon', 'readmitted'], axis=1)

 
< Предыдущая   СОДЕРЖАНИЕ   Следующая >
 
Предметы
Агропромышленность
Банковское дело
БЖД
Бухучет и аудит
География
Документоведение
Естествознание
Журналистика
Инвестирование
Информатика
История
Культурология
Литература
Логика
Логистика
Маркетинг
Математика, химия, физика
Медицина
Менеджмент
Недвижимость
Педагогика
Политология
Политэкономия
Право
Психология
Региональная экономика
Религиоведение
Риторика
Социология
Статистика
Страховое дело
Техника
Товароведение
Туризм
Философия
Финансы
Экология
Экономика
Этика и эстетика
Прочее