Для просмотра этого контента требуется подписка на Jove Войдите в систему или начните бесплатную пробную версию.
Мы представляем гибкий, расширяемый рабочий процесс на основе Jupyter-lab для неконтролируемого анализа сложных мультиомных наборов данных, который сочетает в себе различные этапы предварительной обработки, оценку модели мультиомного факторного анализа и несколько последующих анализов.
Механизмы заболевания обычно сложны и регулируются взаимодействием нескольких различных молекулярных процессов. Сложные, многомерные наборы данных являются ценным ресурсом для получения более подробной информации об этих процессах, но анализ таких наборов данных может быть сложным из-за высокой размерности, возникающей, например, в результате различных состояний заболевания, временных точек и омиксов, фиксирующих процесс с разным разрешением.
В этой статье мы демонстрируем подход к анализу и исследованию такого сложного мультиомного набора данных без учителя путем применения мультиомического факторного анализа (MOFA) к набору данных, созданному из образцов крови, которые отражают иммунный ответ при острых и хронических коронарных синдромах. Набор данных состоит из нескольких анализов с различным разрешением, включая данные цитокинов на уровне образца, плазмо-протеомику и прайм-секвенирование нейтрофилов, а также данные РНК-секвенирования одиночных клеток (scRNA-seq). Еще больше усложняется тем, что для каждого пациента измеряется несколько разных временных точек, а также несколько подгрупп пациентов.
Рабочий процесс анализа описывает, как интегрировать и анализировать данные в несколько этапов: (1) предварительная обработка и гармонизация данных, (2) оценка модели MOFA, (3) последующий анализ. В шаге 1 описывается, как обрабатывать признаки различных типов данных, отфильтровывать признаки низкого качества и нормализовать их для гармонизации их распределений для дальнейшего анализа. На шаге 2 показано, как применить модель MOFA и изучить основные источники дисперсии в наборе данных по всем омикам и признакам. На шаге 3 представлено несколько стратегий для последующего анализа захваченных паттернов, связывающих их с заболеваниями и потенциальными молекулярными процессами, управляющими этими состояниями.
В целом, мы представляем рабочий процесс для неконтролируемого исследования сложных мультиомиксных наборов данных, чтобы обеспечить идентификацию основных осей вариации, состоящих из различных молекулярных особенностей, которые также могут быть применены к другим контекстам и мультиомиксным наборам данных (включая другие анализы, представленные в примере использования).
Механизмы заболевания обычно сложны и регулируются взаимодействием нескольких различных молекулярных процессов. Расшифровка сложных молекулярных механизмов, которые приводят к конкретным заболеваниям или управляют эволюцией болезни, является задачей с высокой медицинской значимостью, поскольку она может открыть новые идеи для понимания и лечения заболеваний.
Последние технологические достижения позволяют измерять эти процессы с более высоким разрешением (например, на уровне отдельных клеток) и в то же время на различных биологических уровнях (например, ДНК, мРНК, доступность хроматина, метилирование ДНК, протеомика). Это приводит к увеличению количества больших многомерных наборов биологических данных, которые могут быть совместно проанализированы для получения более глубокого понимания лежащих в их основе процессов. В то же время объединение и анализ различных источников данных биологически значимым образом остается сложной задачей1.
Различные технологические пределы, шумы и диапазоны изменчивости между различными омиксами представляют собой одну проблему. Например, данные секвенирования РНК отдельных клеток (scRNA-seq) очень скудны и часто подвержены влиянию больших технических или пакетных эффектов. Кроме того, пространство признаков часто бывает очень большим, варьируясь от нескольких тысяч измеренных генов или белков, в то время как размеры выборки ограничены. Это еще больше осложняется сложными конструкциями, которые могут включать в себя несколько состояний заболевания, смешанные факторы, временные точки и решения. Например, в представленном сценарии использования различные типы данных были доступны либо на уровне одной ячейки, либо на уровне выборки (объема). Кроме того, данные могут быть неполными, и не все измерения могут быть доступны для всех анализируемых субъектов.
Из-за этих проблем различные омиксы и включенные в них особенности по-прежнему часто анализируются только по отдельности2, хотя выполнение интегрированного анализа не только может дать полную картину процесса, но и биологические и технические шумы от одной омики также могут быть компенсированы другими омиксами 3,4. Для выполнения комплексного анализа мультиомиксных данных было предложено несколько различных методов, включая байесовские методы, сетевые методы 5,6, мультимодальное глубокое обучение7 и методы уменьшения размерности с помощью матричной факторизации 8,9. Что касается последнего, то результаты большого сравнительного исследования10 показали, что метод MOFA9 (мультиомический факторный анализ) является одним из наиболее подходящих инструментов, когда данные должны быть увязаны с клиническими аннотациями.
Особенно в сложных условиях методы факторизации матрицы без учителя являются полезным подходом для снижения сложности и извлечения общих и дополнительных сигналов из различных источников данных и функций. Разложив сложное пространство на латентные представления более низкого ранга, можно быстро изучить основные источники дисперсии в данных и связать их с известными ковариатами. В случае, если один и тот же паттерн вариаций является общим для нескольких признаков (например, генов или белков), это может быть агрегировано до нескольких факторов, в то время как шум уменьшается. Регуляризация может быть использована для увеличения разреженности коэффициентов модели, что делает этот подход хорошо подходящим в условиях, где пространство признаков велико, а количество выборок ограничено9.
Этот протокол представляет собой гибкий рабочий процесс анализа, который использует модель MOFA для демонстрации того, как быстро изучить сложный мультиомный набор данных и выделить основные закономерности вариаций, характеризующие этот набор данных. Рабочий процесс состоит из трех основных этапов. На первом этапе, «Предварительная обработка и гармонизация данных», представлены различные стратегии предварительной обработки данных, основанные на различных типах входных данных (scRNA-seq, протеомика, цитокин, клинические данные). В протоколе подробно описывается, как обрабатывать признаки различных входных наборов данных, отфильтровывать признаки низкого качества и нормализовать их для гармонизации их распределений. Мы также показываем, как эти решения по предварительной обработке могут повлиять на последующие результаты. На втором этапе к данным применяется модель MOFA, и полученная дисперсионная декомпозиция может быть использована для оценки интеграции различных наборов данных. На третьем шаге показано, как связать захваченные факторы с ковариатами и раскрыть молекулярные программы, определяющие эти факторы. С помощью представленного рабочего процесса мы смогли извлечь несколько латентных факторов, связанных с клиническими ковариатами, в наборе данных пациентов, страдающих коронарными синдромами, и идентифицировать потенциальные лежащие в основе многоклеточные иммунные программы изпредыдущего проекта. Здесь мы будем использовать этот набор данных, но протокол можно легко применить к другим контекстам, включая другие омики.
Набор данных состоит из образцов пациентов со стабильными хроническими коронарными синдромами (ХКС), острыми коронарными синдромами (ОКС) и контрольной группы со здоровыми коронарными артериями (без ХКС) (рис. 1). ОКС вызывается разрывом бляшек в уже существующем ССХ, что приводит к острому нарушению притока крови к миокарду и последующему ишемическому повреждению сердца. Это повреждение вызывает воспалительную реакцию иммунной системы, за которой следует репаративная фаза, которая длится в течение нескольких дней после острого события12. Чтобы иметь возможность охарактеризовать этот иммунный ответ у пациентов с ОКС, образцы крови были взяты в четыре разных временных момента: острый (TP1); после реканализации (14 [± 8] ч) (TP2); через 60 [± 12] ч (TP3); до выписки (6,5 [±1,5] дней) (TP4) (рисунок 1A). Для ССК и пациентов со здоровыми коронарными артериями была доступна только одна временная точка - (TP0). Для всех пациентов и временных точек на основе образцов крови были измерены различные анализы: клинические маркеры воспаления (креатин-киназа (КФК), КФК-МБ, тропонин, С-реактивный белок (СРБ)), scRNA-seq мононуклеарных клеток периферической крови (PBMCs), цитокиновый анализ, плазменная протеомика и данные нейтрофилов prime-seq13 .
Рисунок 1: Мультиомный входной набор данных по инфаркту миокарда. Входной набор данных: Анализируемые данные включают образцы крови пациентов (n = 62) с острым коронарным синдромом (ОКС), хроническими коронарными синдромами (ХКС) и пациентами со здоровыми коронарными артериями (без ОАС). У пациентов с ОКС образцы крови были включены в четыре разных временных момента (TP1-4), у пациентов с CCS и без CCS в одну временную точку (TP0). Каждый пациент и комбинация временных точек рассматривается как отдельный образец в анализе. На образцах были проведены различные омические анализы: клинические анализы крови (n = 125), scRNA-seq (n = 121), плазма-протеомика (n = 119), цитокиновый анализ (n = 127) и нейтрофильный прайм-секвен (n = 121). Впоследствии описанный протокол был применен для интеграции данных по всем омиксам и их изучения с использованием модели MOFA и дальнейшего анализа (факторный анализ, обогащение путей). Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.
В качестве входных данных для рабочего процесса, представленного здесь, мы берем исходные подсчеты из данных scRNA-seq после обработки с помощью cellranger и контроля качества (QC), как, например, описано в учебном пособии по предварительной обработке scanpy14 . Для аннотирования ячеек мы использовали автоматизированный конвейер Azimuth15 . Затем подсчеты агрегируются на уровне выборки для каждого типа клеток путем вычисления среднего значения по всем ячейкам для каждой выборки и типа клеток (псевдообъемная агрегация). Плазменная протеомика включена в виде нормализованной и медиан-центрированной интенсивностей, а для нейтрофилов мы берем количество экзонов уникального молекулярного идентификатора UMI (UMI) из прайм-секвенирования. Что касается цитокинов и клинических показателей, предыдущая предварительная обработка не применялась. Более подробная информация о (экспериментальной) генерации данных изложена в соответствующей рукописи11. Поскольку представленные здесь результаты основаны на использовании автоматизированной аннотации азимута для типов клеток в данных scRNA-seq по сравнению со стратегией, основанной на маркерах, которая использовалась в упомянутой публикации, представленные здесь результаты аналогичны, но не полностью совпадают с теми, которые представлены в публикации. В рукописи можно показать, что стратегия аннотации по типам клеток не изменяет основных закономерностей и биологических интерпретаций анализа, но небольшие изменения в точных значениях, полученных в результате модели, могут варьироваться. В целом, входные данные представляли собой сложный многомерный набор данных, включающий различные временные точки и уровни измерения (одиночные клетки против объемных) более чем 10 000 различных признаков (генов, белков, клинических значений). Было показано, что строгая стратегия предварительной обработки и гармонизации данных с последующим анализом MOFA является полезным и быстрым инструментом для изучения данных и извлечения соответствующей иммунной программы. Каждая временная точка и комбинация пациентов рассматриваются как независимая выборка в анализе MOFA. Каждый тип данных и тип ячейки рассматривается как отдельное представление в анализе MOFA.
Этот протокол содержит инструкции по подготовке входных данных для рабочего процесса, выполнению различных этапов рабочего процесса, настройке конфигураций, интерпретации полученных цифр и итеративной корректировке конфигураций на основе интерпретаций. Обзор различных этапов протокола, необходимых входных наборов данных на каждом шаге, а также результирующих рисунков и наборов данных представлен в обзоре технического рабочего процесса (рисунок 2).
Рисунок 2: Обзор технического рабочего процесса. Схема рабочего процесса для анализа набора мультиомических данных. Разные элементы выделены разными цветами и символами. Записные книжки Jupyter, относящиеся к этапу Предварительная обработка и гармонизация данных (1), окрашены в синий цвет. Блокноты Jupyter, относящиеся к шагу «MOFA Model» (2), окрашены в оранжевый цвет. Записные книжки Jupyter, относящиеся к шагу «Анализ на последующих этапах» (3), окрашены в зеленый цвет. Один из блокнотов Jupyter, который будет использоваться для сравнения результатов, окрашен в желтый цвет. Файлы конфигурации, в которых можно изменить параметры для выполнения расчетной схемы, выделены фиолетовым цветом. Входные наборы данных, необходимые для запуска рабочего процесса, обозначены символом набора данных и выделены серым цветом. Все выходные данные рисунка, которые генерируются во время выполнения рабочего процесса, обозначаются символом лупы. Наборы данных, созданные во время выполнения расчетной схемы, обозначаются как таблицы. В общем случае рабочий процесс выполняется последовательно: (1) Предварительная обработка и гармонизация данных состоит из двух этапов: сначала генерируется псевдообъемная таблица на основе входных данных scRNA-seq (01_Prepare_Pseudobulk) и последующая интеграция и нормализация этих данных вместе со всеми остальными входными данными уровня выборки (объемными) (02_Integrate_and_Normalize_Data). На этом шаге с помощью конфигурационных файлов можно настроить для каждого набора данных отдельно, какой из указанных шагов предварительной обработки и нормализации (например, фильтр выборки) должен быть применен. (2) «MOFA Model»: запускает модель MOFA на сгенерированных входных данных первого шага с конфигурациями, указанными в файле конфигурации (03_MOFA_configs.csv) (3) «Downstream Analysis»: состоит из трех различных блокнотов, которые могут быть запущены независимо друг от друга для получения аналитических сведений о сгенерированных результатах MOFA и связывания их с образцами метаданных (ковариатами), предоставленными в качестве входных данных через файл «Sample Meta Data.csv». (4) «Сравнение моделей»: это небольшой отдельный шаг, который может быть использован для сравнения различных моделей, созданных на шаге 2. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.
Рабочий процесс состоит из нескольких записных книжек Jupyter, написанных на R и Python (знание языков R и Python не требуется для запуска рабочего процесса, но может быть полезно в случае появления ошибок). На различных этапах протокола изменение параметров осуществляется с помощью конфигурационных файлов (файлы '.csv, содержащие в имени постфикс '_Configs'). В протоколе мы только выделяем параметры, которые необходимо изменить, начиная с конфигурации по умолчанию.
Некоторые другие параметры также могут быть изменены, например, для настройки предварительной обработки. Документация по этим параметрам и пояснения приведены в файле 'Documentation_Config_Parameter', который включен в загруженный репозиторий.
1. Подготовка: Техническая настройка и монтаж
ПРИМЕЧАНИЕ: Чтобы запустить эту программу, на устройстве должны быть предустановлены wget, git и Apptainer. Инструкция по установке Apptainer на разные системы (Linux, Windows, Mac) приведена здесь: https://apptainer.org/docs/admin/main/installation.html. Информацию об установке git можно найти здесь: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git. В зависимости от размера различных входных наборов данных рекомендуется запускать рабочий процесс на подходящем компьютере (16 ЦП, 64 ГБ памяти). Дымовой тест с предоставленными примерами данных может быть выполнен на локальном компьютере. Инструкции и ожидаемые результаты выполнения протокола на данных примера приведены в дополнительном файле 1. В дополнительном видеофайле 1 приведены важные шаги протокола, которые выполняются на описанном выше наборе данных.
2. Инициализация и подготовка данных
Рисунок 3: Ввод и настройка данных. Для выполнения рабочего процесса все данные должны храниться в указанной папке input_data. Для каждого входного набора данных должен быть предоставлен отдельный файл. Данные по отдельным ячейкам должны быть представлены в виде .h5ad, содержащего аннотацию к ячейке на cluster_id (полученную, например, в результате предыдущих шагов аннотации типа ячейки) и столбец sample_id (однозначно идентифицирующий каждую отдельную выборку, которая должна быть проанализирована). Все остальные входные наборы данных должны быть предоставлены в формате '.csv', включая один столбец, указывающий sample_id (соответствие соответствующему столбцу данных одной ячейки) и признаки, которые будут использоваться при анализе MOFA во всех остальных столбцах. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.
Рисунок 4: Конфигурационные файлы Jupyter-lab. Во время выполнения расчетной схемы изменения параметров (например, настройка параметров фильтрации и т. д.) указываются через файлы конфигурации «.csv». В клонированный репозиторий включаются файлы конфигурации по умолчанию для каждого шага. Они могут быть отредактированы непосредственно в консоли jupyter-lab, аналогично электронной таблице. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.
Рисунок 5: Скрипты Jupyter-notebooks. Полный рабочий процесс состоит из серии записных книжек Jupyter, которые будут выполняться последовательно после изменения соответствующих файлов конфигурации. При двойном щелчке мыши по записной книжке Jupyter с левой стороны соответствующий файл будет открыт с правой стороны. Полное выполнение файла можно запустить с помощью кнопки, выделенной вверху. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.
3. Предварительная обработка и гармонизация данных
Рисунок 6: Предварительная обработка и гармонизация данных. Одним из выходных данных шага '01_Prepare_Pseudobulk' является график 'Fig01_Amount_of_Cells_Overview'. Здесь для каждого cluster_id (ось Y, указывающая на тип ячейки из предыдущих шагов аннотации типа ячейки) указывается количество ячеек на выборку («sample_id»). В рамках представленных результатов типы клеток с малым количеством клеток в образце исключаются из последующего анализа (обозначаются зачеркиванием). Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этой цифры.
4. Запуск MOFA
5. Анализ на последующих этапах
6. Сравнение различных конфигураций и версий (Дополнительный рисунок 1, Дополнительный рисунок 2, Дополнительный рисунок 3, Дополнительный рисунок 4)
7. Расширение рабочего процесса: добавление других параметров и конфигураций
ПРИМЕЧАНИЕ: Помимо параметров, которые в настоящее время можно настроить в файлах конфигурации, могут быть включены и другие изменения в коде или другие параметры. Например, сама модель MOFA предлагает несколько других обучающих параметров17 , которые могут быть либо изменены непосредственно в коде, либо настроены с помощью конфигурационных файлов. В следующем разделе протокола будет приведен пример того, как это сделать для дополнительных параметров обучения модели MOFA. Для этой части требуются знания программирования на R.
После успешного выполнения рабочего процесса создается несколько таблиц и рисунков, как показано на рисунке 2. Рисунки помещаются в папку /figures (Рисунок 6, Рисунок 7, Рисунок 8, Дополнительный ...
С помощью описанного протокола представлен модульный и расширяемый рабочий процесс на основе Jupyter-notebook, который можно использовать для быстрого изучения сложного мультиомного набора данных. Основные части рабочего процесса состоят из предварительной обработки и га...
Авторы заявляют об отсутствии конфликта интересов.
C.L. поддерживается Ассоциацией имени Гельмгольца в рамках совместной исследовательской школы "Munich School for Data Science - MUDS".
Name | Company | Catalog Number | Comments |
Apptainer | NA | NA | https://apptainer.org/docs/admin/main/installation.html |
Compute server or workstation or cloud (Linux, Mac or Windows environment). Depending on the size of the different input datasets we recommend running the workflow on a suitable machine (in our setting we use: 16 CPU, 64GB Memory) | Any manufacturer | 16 CPU, 64GB Memory | Large Memory is only required for the processing of the raw single cell data. After preprocessing the later analysis steps can also be performed on regular desktop or laptop computers |
git | NA | NA | https://git-scm.com/book/en/v2/Getting-Started-Installing-Git |
GitHub | GitHub | NA | https://github.com/heiniglab/mofa_workflow |
Запросить разрешение на использование текста или рисунков этого JoVE статьи
Запросить разрешениеСмотреть дополнительные статьи
This article has been published
Video Coming Soon
Авторские права © 2025 MyJoVE Corporation. Все права защищены