Mimic-code: Совет по запуску сложных сценариев SQL, переданных из других проектов / исследований?

Созданный на 2 сент. 2017  ·  4Комментарии  ·  Источник: MIT-LCP/mimic-code

Привет, я новичок в MIMIC-3 и postgeSQL / pgAdmin 4.

Я работал с записной книжкой по выбору когорты и думаю, что теперь понимаю основы.

Мне дали два «больших двоичных объекта» SQL-запросов, один из которых используется для определения когорты , а другой - для последующего извлечения данных из предыдущего проекта. Я пробовал запускать отдельные блоки запросов из обоих «блобов» в pgAdmin4, и я думаю, что понимаю их части.

Мне просто было интересно, как я могу запустить все это для вывода таблиц в формате csv для каждого контакта с пациентом в отделении интенсивной терапии?

Моей конечной задачей было бы извлечь 47 предопределенных функций из каждого из этих файлов csv (и некоторые другие средства предварительной обработки), а затем объединить их в многомерный временной ряд, что я мог бы сделать в Matlab или Python, используя pandas.

Набор данных для исследования, который я пытаюсь воспроизвести, подробно описан в разделах 8.1 и 8.2 этой статьи.

Думаю, это, возможно, не подходящее место, чтобы просить такого совета? Итак, есть ли другое место, которое вы могли бы порекомендовать новичкам, желающим научиться запускать сценарии SQL, унаследованные от других проектов / исследований? Я полагаю, что это довольно частый вопрос / задача, но я не нашел места, которое помогло бы?

Большое спасибо за вашу помощь!

Самый полезный комментарий

Здорово! Удачи!

Все 4 Комментарий

Вот несколько советов для новичков, у которых может быть такая же проблема,

  • Чтобы выполнить несколько блоков запросов, используя query tool в pgAdmin4, попробуйте завершить каждый блок точкой с запятой;

Проблема в том, что кажется, что только последний запрос фактически выполняется в Data Output Panel - я думаю, вам нужно использовать предложение UNION или JOIN , чтобы как-то их объединить?

cohort_definition

  • Чтобы сохранить итоговую таблицу, то есть для экспорта из Postgres в CSV, вы можете использовать оператор COPY , см. # 214

Я не думаю, что могу предложить общее решение, но, возможно, смогу указать вам в правильном направлении. Мой любимый способ работы - писать модульные сценарии SQL, которые создают материализованные представления данных для определенных концепций (например, вентиляции). Затем я объединяю все эти представления вместе в конце, чтобы сделать одну большую таблицу, и я вывожу ее в CSV или читаю прямо в Python. Если вы хотите изучить SQL, я уверен, что в Интернете есть много руководств, которые помогут в этом. В частности, я бы прочитал о материализованных представлениях, поскольку они очень полезны для создания промежуточных таблиц, которые вы затем можете использовать позже (я думаю, что это то, что вам нужно в вашем последнем вопросе).

Если вы посмотрите на подпапку aline (https://github.com/MIT-LCP/mimic-code/tree/master/notebooks/aline), вы увидите пример полностью воспроизводимого клинического исследования. Я бы порекомендовал сделать что-то вроде того, что сделано в этой папке. Существует множество модульных файлов SQL, которые генерируют базовые таблицы - вы можете видеть, что я сначала генерирую " когортную " таблицу icustay_id s, которые меня интересуют". Затем я запускаю ряд других сценариев, чтобы создать концепции для этих icustay_id s. Наконец, записная книжка извлекает все данные из этих таблиц (в aline.ipynb @ [7]). Ноутбук пошел еще дальше и фактически выполняет все вышеперечисленные запросы непосредственно из Python. По крайней мере, это должно дать вам представление о том, как вы можете создать когорту / набор данных из нескольких запросов SQL. Надеюсь, это поможет!

Привет, Алистер @alistairewj , большое спасибо за эту отличную помощь, она очень ценится: +1:

Я трачу некоторое время на изучение постоянного артериального катетера (исследование aline ) и ваших

Немного крутой кривой обучения, но это начинает иметь смысл :) Вторичный анализ электронных медицинских карт тоже оказывается действительно полезным :)

Здорово! Удачи!

Была ли эта страница полезной?
0 / 5 - 0 рейтинги