Сообщения

Сообщения за январь, 2018

Классификация пациентов. Часть 3. Подготовка данных.

Изображение
Мы уже определили наш первый набор предкторов. Это 6 самый популярных измерений, которые представленны числами и имеют указанные в базе единицы измерения. Однако все они предствелнны множеством измерений во времени, своего рода временными рядами. Наше же выборка должна иметь условно вид таблицы. Рисунок временной ряд для пульса. Самое простое, что можно придумать это взять среднее значение. В SQL это возвращается функциеей AVG(). Напишем запрос возврашающий среднее значние всех измерений гемоглабина для каждого пациента. SELECT --hemoglobin ch.hadm_id     , AVG(valuenum) as avg_valuenum FROM mimiciii.chartevents_sepsisv_d ch , mimiciii.admissions_sepsisv_d ad WHERE ad.hadm_id = ch.hadm_id AND (ch.itemid = 220228 -- hemoglobin_id         OR ch.itemid = 814) -- hemoglobin_id     GROUP BY ch.hadm_id Такй запрос возвращает 5265 строк и учитывет оба возможных кода измерения гемоглобина, в то же время он исключает повторы, та...

Классификация пациентов. Часть 2. Отбор признаков

Изображение
Мы ограничили данные выборкой пациентов у которых в списке диагнозов есть коды сепсиса. К сепсису относяст ICD9 коды 9959. Значит в запросах нужно добавять что-то вроже   WHERE        diagnoses_icd.icd9_code like '9959%' Фото источник: https://icd.codes/icd9cm/9959  Что бы не писать это условие в коде каждый раз создадим представление для таблиц с коротыми будем работать. Напрмер для таблицы admittions представление будет просто содержать все теже поля, но только те строки для которых есть код сепсиса в теблице diagnoses_icd. Для справки. Представления - это таблицы чье содержание выбирается или получается из других таблиц. Они работают в запросах и операторах DML точно также как и основные таблицы, но не содержат ника- ких собственных данных. Представления - подобны окнам, через которые вы просматриваете информа- цию( как она есть, или в другой форме, как вы потом увидите ), которая фактически хранится в базовой таблице. Пр...