[МУЗЫКА]
[МУЗЫКА] Давайте начнем с того, что посмотрим на наши данные.
Давайте откроем терминал и посмотрим на наши файлы.
Нас интересует файл формата fasta.
[ШУМ] Вот он.
У него разрешение fna, что означает, что это файл с нуклеотидами.
Вот мы видим целый набор фрагментов, каждый из них — это участок 16S,
относящийся к каждому из наших образцов.
Их тут довольно много.
Можем, кстати, посчитать, сколько их.
[ШУМ]
[ШУМ] Как мы
помним из предыдущего курса, это делается, например, вот таким образом.
Мы видим, что у нас порядка 1400 фрагментов,
которые нам нужно будет как-то сгруппировать.
Еще один из обязательных файлов для запуска — это так называемый mapping file,
который выглядит у нас следующим образом.
Мы тут видим, что у нас есть пять
контролей и четыре наших эксперимента.
И у каждого из них есть свой номер — в первом столбце,
и каждому из них соответствует свой штрих-код.
То есть к каждому из наших фрагментов, полученных из секвенатора,
прицеплен свой уникальный так называемый штрих-код — какая-то последовательность,
по которой у нас программа определяет, к какому из образцов он относится.
Для анализа ваших собственных данных вам
нужно будет написать свой собственный контрольный файл,
который пишется примерно таким же образом.
В качестве первого этапа нам нужно будет разделить все наши фрагменты по образцам
и убрать вот эти самые штрих-коды, потому что они, собственно, они искусственные
добавки к нашим фрагментам, и они не несут никакой биологической информации.
Для этого в [НЕРАЗБОРЧИВО] есть утилита, которая называется split_libraries.
И мы ей говорим, что у нас
есть такой-то вот файл, в котором у нас написано, кто у нас кто.
И также мы сообщаем ей, где лежат наши исходные данные ну и,
конечно, куда сложить наш результат.
[ШУМ] Так, программа отработала.
Теперь давайте посмотрим, что у нас получилось.
В получившейся директории у нас есть файл
split_library_log, в котором нам сообщают,
что у нас нашлось 9 образцов таким-то бар-кодом.
И у нас получается порядка 150 последовательностей,
это к каждому образцу.
Теперь наш следующий этап — это как раз этап кластеризации.
Теперь давайте перейдем в получившуюся директорию.
[ШУМ] Посмотрим, что у нас есть.
Вот у нас есть файл с расширением fna,
это у нас уже сгрупированные по нашим образцам фрагменты.
И теперь мы начнем подбор вот этих самых таксономических единиц,
то есть в каждом из образцов мы будем группировать наши участки,
наши фрагменты 16S по близости друг к другу.
Для этого тут есть утилита,
которая называется подбор OTU.
На самом деле, ей можно скормить очень много разных
параметров, то есть можно задать, насколько точно должно быть совпадение,
можно задать, чтобы она группировала только абсолютно совпадающие фрагменты.
Или как-то это настроить.
Но по умолчанию она обычно берет, кажется, 97 %,
что является примерно критерием вида.
Это, конечно, нестрого, потому что как бы что такое вид?
Это такой вопрос дискуссионный.
Но у нас в итоге получаются группы,
которые отличаются друг от друга не более, чем на 97 %.
Попробуем, собственно, это сделать.
[ШУМ] [ШУМ]
Давайте посмотрим, что у нас получилось.
Вот у нас получилась директория с результатом нашей группировки,
в которой у нас есть otus.txt,
давайте посмотрим, что в нем.
[ШУМ] И вот мы видим,
что некоторым из этих групп соответствует всего один фрагмент,
некоторым — 2, некоторым — 3.
А есть некоторые, которым соответствует довольно много фрагментов,
то есть это, скажем, те виды, которые у нас представлены в большом количестве,
и в нашем образце получилось довольно много этих фрагментов.
Но как из этих данных получить какой-то более-менее осмысленный результат?
Во-первых, для каждого из них мы выберем его представителя,
то есть если у нас есть группа, в которой у нас есть 20 одинаковых, просто
возьмем только одну последовательность, и дальше будем работать уже с ней.
Для этого есть у нас такой инструмент, называется rep_set,
то есть выбор набора представителей этих самых единиц.
[ШУМ]
[ШУМ] Говорим,
где у нас находятся наши группы.
И мы говорим, где у нас находятся наши исходные данные.
[ШУМ] [ШУМ]
И мы говорим, куда сложить результат.
[ШУМ] Так.
Давайте посмотрим, сколько у нас в итоге получилось наших фрагментов.
Мы с вами уже знаем, как это делать.
Мы ищем кусочек, с которого у нас начинается
описание каждого фрагмента, и дальше считаем,
сколько у нас таких строчек получилось.
У нас получилось всего 420 групп.
Теперь для полученного набора фрагментов давайте определим, собственно,
кто у нас кто — мы сопоставим из в базе данных.
Для этого у нас есть тоже такой инструмент,
называется assign_taxonomy,
который на вход у нас берет наш набор представителей вот этих самых,
по одной из каждой нашей OTU, и сопоставляет их в базе данных.
По умолчанию он использует базу greengenes но, собственно,
как и у большинства команд Linux, если вы скажете -h,
он выдаст вам подробную справку, в которой будет рассказано,
как дать ему другую базу данных или как настроить там любой параметр по умолчанию.
Но мы с вами будем использовать дефолтные параметры и просто скажем,
что запишем результаты в, например, вот сюда.
[ШУМ] Этот процесс занимает
несколько секунд, и в конечном итоге мы с вами получаем табличку, в которой каждой
из этих записей будет сопоставлена ее таксономическая принадлежность,
до того уровня, до какого, собственно, мы как бы смогли это определить.
То есть это на уровне род, вид, столько подробно.
Давайте на нее взглянем.
Это у нас есть [НЕРАЗБОРЧИВО].
Вот, собственно, для каждой группы у нас имеется ее
принадлежность: Bacteria, Firmicutes, Clostridia и так далее.
И вот мы в итоге мы с вами получили нашу табличку,
и теперь хорошо бы ее собрать в формат,
который можно будет передать дальше другим программам для последующего анализа.
Для этого у нас есть
утилита make_otu_table,
которая берет на вход, во-первых,
наши, наши последовательности,
А во-вторых,
−t — это таксономия, во-вторых,
она берет результаты нашего предсказания таксономии.
И мы получаем на выходе файл формата biom и назовем его вот так, например.
Biom — это сокращение от biological observation matrix,
то есть матрица биологических наблюдений.
Это был формат, который был разработан целым консорциумом ученых именно для того,
чтобы хранить данные анализов сообществ.
Давайте попробуем сделать такую табличку.
Вот мы такую табличку сделали, и теперь ее можно просто
визуализовать в таких программах, как, например, MEGA.
И вот, например, один из вариантов визуализации — это построить
филогенетическое дерево для всех образцов, для, собственно,
всех видов, которые у нас тут используются.
И вот мы видим, собственно, всех ребят, которые у нас тут находятся,
и более того, тут есть еще информация о том, насколько их много.
То есть грубо говоря, размер вот этих кружков здесь — он просто
пропорционален представленности наших видов.
Ну а теперь, имея такую табличку, собственно, имея наш biom файл,
мы можем из него выдергивать довольно много разной информации.
Например, мы можем сейчас оценить таксономическую представленность в каждом
из наших образцов.
Вот.
Для этого сначала просуммируем нашу таксономическую композицию
по разным уровням, то есть сгруппируем их на уровне видов, родов и других групп.
Для этого мы воспользуемся следующей командой:
summarize_taxa.py Вот.
На вход мы ей даем нашу замечательную табличку формата biom.
[ЗВУК] Вот.
И результат записываем вот в эту директорию.
Так.
Давайте посмотрим, что у нас получилось.
Вот.
Мы видим, что она у нас сделала отдельные biom
файлы и сопутствующие им текстовые для разных уровней,
то есть L2 — это, скажем, уровень...
L3 — уровень класса, L4 — уровень рода и т.д.
Вот. И на любом из интересующих нас уровней мы
можем уже построить нашу картину представленности.
Давайте это сделаем.
Для этого воспользуемся очередной утилитой
из нашего набора, она будет называться вот так.
[ЗВУК] И в качестве
входа мы ей выдадим нашу табличку, скажем, на уровне класса.
Вот так вот сделаем.
Результат запишем
вот так.
Давайте посмотрим, что у нас получилось.
Получилась у нас вот такая интересная вещь.
По каждому из наших образцов мы видим, собственно,
представленность разных групп, собственно, в этом метагеноме.
Здесь мы видим, что у нас для разных образцов,
и для образцов и для контроля таксономическая картина...
картина таксономической представленности меняется.
Но теперь нам надо ее как-то оценить, не просто на глаз,
что здесь становится больше, здесь становится меньше.
Вот. Для этого мы можем уже применять различные
метрики, которые пришли к нам из микробной экологии, это метрики оценки разнообразия,
такие, как альфа-разнообразие, то есть оценка богатства конкретных сообществ,
и бета-разнообразие — это оценка между разными сообществами.
Для того, чтобы проводить такие оценки,
в Chime есть такая функция, как rf action.
Это так называемое уменьшение наших данных,
чтобы учесть количество...
чтобы учесть нашу экспериментальную погрешность,
потому что у нас может оказаться, скажем, что из одного образца у нас пришло
там 1000 фрагментов, из другого образца пришло всего 100 фрагментов.
И нам нужно будет учитывать только относительное соотношение между ними,
поэтому мы можем просто нормализовать, то есть скажем, грубо говоря,
из каждого образца выбрать сколько-то ридов, то есть сколько-то участков — 20,
30, 40, в зависимости от того, сколько у нас их всего.
Вот. И с определенным шагом.
И посмотреть, как у нас меняется представленность.
И вот, собственно, результат у нас может выглядеть примерно таким образом.
Если мы выбираем, скажем, сначала по 20, 40, 60,
80 и по 100 образцов из каждого Мы помним, что у нас на каждый образец было 100...
140 фрагментов.
Вот. И мы видим,
что при увеличении представленности, то есть как бы при увеличении глубины
секвенирования у нас появляется четкая разница между нашим контролем и опытом.
И мы видим, что в опыте у нас просто увеличивается разнообразие.
То есть тут можно уже делать какие-то выводы, например, о том, что у нас идет
стресс, и под влиянием стресса на среду, на вот это сообщество оно меняется,
оно как бы становится более разнообразным, оно как-то реагирует.
И мы можем сравнивать разные образцы между
собой и вычислять, грубо говоря, расстояние между ними.
То есть кто из наших мышек, точнее,
по составу своей микрофлоры ближе друг к другу.
И мы можем это визуализировать примерно таким вот образом либо в форме
вот таких вот кластеров, в которых у нас наш опыт тоже
выделяется в одну группу, мы можем это четко видеть здесь.
Или мы можем воспользоваться каким-нибудь местным методом снижения размерности,
например, методом главных компонент,
который позволяет нам представить примерно такие графики,
на которых мы тоже видим, что у нас именно опыт и контроль,
они являются основным как раз источником различий,
собственно, в составе микробиоты.
В практическом задании этой недели вы сможете проделать все эти процедуры
и получить все эти графики самостоятельно уже на другом наборе данных.
А я в заключение хочу сказать,
что анализ 16s — это, конечно,
очень мощный и очень интересный и полезный инструмент в наших руках,
но, конечно же, им исследования микробионов не ограничиваются.
И собственно, он является только частью общей схемы,
которая представлена здесь на рисунке.
И конечно, гораздо больше информации мы можем получить,
если мы будем секвенировать полные геномы,
и комбинируя уже эту информацию с тем,
что мы получили в 16s, мы можем получить гораздо больше данных,
и мы можем уже оценивать функциональные свойства этого сообщества.
Мы можем рассмотреть, что оно умеет, чем оно дышит и т.д.
Ну, всем этим мы займемся на следующей неделе.
Спасибо.