[МУЗЫКА] [МУЗЫКА] Продолжаем проверку качества. Программа завершила анализировать наши большие данные. Я запускал анализ, еще раз напоминаю, на полном датасете, вы можете сделать, как вам удобнее, но программа FastQC работает очень быстро, и даже файлы в 12 гигабайт, правильнее, на самом деле два файла по 6, суммарно 12, проанализирует в течение минуты. Смотрите, что у вас получается в результате. Получается, на каждый из файлов создается свой отдельный отчет и архив отчета, в общем-то, без разницы. Можно в настройках программы сказать, чтобы она этого не делала. Нужно открыть .html-файл. Не пугайтесь, вы это делаете каждый день, делается это с помощью браузера. Просто дважды щелкаете, и он должен вам открыть веб-страничку. Здесь, собственно, содержится информация, которая была получена программой, обрабатывая файл. Смотрите, базовые статистики, там самое простое обычно — количество ридов, которое было прочитано, и длина рида. Обращу внимание, что у вас должно быть одинаковое количество ридов как в левом файле, так и в правом, который обозначен цифрой штрих 1, штрих 2. Если количество их разное, то это, скорее всего, означает, что либо вы их в процессе обработки как-то повредили, либо обрезали, либо скачали их как-то не очень точно. То есть программы, которые требуют наличие левого и правого конца ридов, не будут работать, если разное количество файлов. Дальше красивый график, он отображает значение качества в риде в отдельной букве. Чем выше качество, тем лучше. Есть формула, по сути, это расчет вероятности ошибки в данном месте. Можете использовать длинную формулу, можете использовать короткую и легко запоминающуюся, которая означает, что, например, качество в 20, как минимум, то есть 20, означает вероятность ошибки 1 на 100. Качество в 30 будет 1 на 1000; в 40, легко можете догадаться, будет 1 на 10000. Как видите, приемлемым качеством создатели программы считают качество хотя бы от 28, то есть где-то около 1 на 1000. Интересно, что вы можете заметить, что к концу рида качество падает. На самом деле, вот эти данные очень хорошие, с ними даже, в общем-то, можно их особо не обрабатывать, то есть можете как-нибудь попытаться их почистить. Про это есть отдельная тема, как и что стоит с ними делать. Мы сегодня запустим их дальше в работу, они не такие плохие, чтобы тратить дополнительно время на это. Давайте посмотрим дальше, что есть. Следующая картинка, поскольку у нас данные хорошие, то здесь практически ничего и не видно. На самом деле это распределение того же самого качества, но уже с учетом ячеек в процессе секвенирования. Видите, вот здесь есть такое небольшое поле, оно как раз говорит, что некоторые ячейки почему-то в конкретном месте выдавали больше ошибок, чем другие. С чем это может быть связано — большой вопрос, как с химией, так и с нанесением в процессе секвенирования, например, мог быть отпечаток пальца, но хотя это слишком мелкая ошибка, чтобы это на что-то влияло. Обычно, если был бы пузырь в микрочипе либо еще что-то, это было бы намного больше. Плохие данные выглядят здесь просто потрясающим образом. Здесь будет все разноцветно, здесь будут красные, желтые, оранжевые пятна. Делается это для того, что вы можете, если вы видите, что поломан просто какой-то tile при секвенировании был, то есть ячейка, вы можете не обрезать все риды, а убрать риды конкретно из этого тайла, потому что если вы вспомните, как мы смотрели, что содержится в .fastq-файле, там есть имя тайла, с которого это секвенировалось. Собственно, программа в процессе анализа это знает. Так что здесь у нас тоже все хорошо, и ничего не делаем. Отдельно можете уже обратить внимание, что с левой стороны у нас находится просто оглавление, и тут сразу подсвечены все проблемы. Мы пройдемся по ним по всем, и, честно скажу, проблем здесь, в общем-то, нет, кроме самых маленьких. Дальше график распределения качества по риду, собственно, тоже всё замечательно здесь. Давайте расскажу еще один момент. Смотрите, почему у нас падает качество к концу рида. Все очень просто, потому что прибор считает качество как соотношение уровня шума в процессе работы к сигналу секвенирования, то есть соотношение шум — сигнал. И вначале это соотношение очень хорошее, потому что у нас нет ошибок в процессе синтеза новой цепочки. У вас Illumina секвенирует на основе короткой цепочки, которую вы фрагментировали, надробили, начинает проясняться по одной дополнительно букве. И как вы знаете, полимераза тоже может ошибаться, и она ошибается, и чем длиннее цепочка, тем чаще она ошибается, поэтому к концу рида будут в кластере накапливаться ошибки, которые будут увеличивать количество шума, и поэтому прибор занижает качество. Собственно, так и есть, потому что там больше ошибок потенциально. В общем, это распределение не случайно, оно всегда такое. Давайте двинемся дальше. Содержание букв в каждой из позиций рида. Смотрите, у нас по горизонтали — это координаты каждой из букв, у нас их 100. Дальше разным цветом обозначены различные нуклеотиды, как вы помните, их всего четыре — A, C, G, T, — в каждом из мест. В идеале у нас линии должны практически слипаться, как мы тут видим, в одну, потому что у нас равная вероятность встретить какую-либо из букв в любом другом месте. То есть у нас нет никаких предпочтений, то есть у нас фрагментация прошла случайно и так далее. Иногда вот здесь можно увидеть, что есть такое немного неслучайное распределение, и оно может быть связано с несколькими вещами: как и с той вещью, которую мы увидим чуть позже в наших данных, потому что я могу вам сразу мини-спойлер устроить — вот эта вот штука немного связана вот с той штукой дальше, желтенькой и красной, так это может быть связано со способом фрагментации, который выбрали в процессе приготовления, потому что, например, фермент траспозаза, который разрезают на короткие фрагменты, он хоть и утверждается, что работает случайно, но на самом деле некоторые последовательности он немного предпочитает другим, поэтому распределение неслучайно. Здесь, в общем-то, все хорошо, давайте двинемся дальше. Почему вот здесь это происходит, расскажу чуть позже, совсем чуть позже. Распределение GC-контента, собственно, в каждом из ридов. Очень полезный график. Я бы назвал его, наверное, вторым по полезности после первого, который просто показывает качество, потому что на нем мы обычно увидим, есть ли у нас какая-либо контаминация. То есть когда мы секвенировали один образец, а туда примешался новый, или еще что-нибудь. Каждому из организмов у нас, по идее, свойственно некоторое соотношение пар GC в геноме или в риде. И, в общем-то, мы можем даже некоторым образом идентифицировать риды, к какому из организмов они могли бы относиться. И при секвенировании мы бы хотели видеть вот именно ровно такой пик, хотя он не всегда бывает, опять же, в силу разных причин, не обязательно это ошибки. Но вот если бы у нас у этого пика, например, были бы еще какие-нибудь горбы сбоку, то есть у нас по сути были бы наложенные такие распределения, то это бы говорило, возможно, в некоторых случаях о том, что у нас секвенировали бактерии, а добавили, например, человека. То есть случайно, это очень часто, практически во многих образцах, где секвенируют кого угодно, есть немножко данных от того, кто их наготовил в библиотеку, но обычно их достаточно мало и незаметно. Бывает так, что их становится много, и это плохо, потому что нужно их затирать. Бывает наоборот, кстати, вы секвенируете людей, а туда попадают бактерии, такое тоже бывает. Но исходя вот из этого распределения, здесь все нормально. Здесь есть подпись к картинке, которая говорит, что здесь есть распределение ожидаемое и наблюдаемое, они у нас совпадают практически, это все прекрасно. Давайте, двинулись дальше. Содержание непрочитанных букв, а именно букв N внутри рида, как вы видите, у нас все пусто. У нас данные хорошие, пропусков в них нет, смотрим дальше. Распределение длин, вот это как раз то, о чем я говорил. У нас все риды длиной либо в основной массе 100 букв, есть чуть-чуть 99, и есть чуть-чуть 101. Это практически идеальная ситуация для такой длины рида, лучше, конечно, было бы 300 букв и тоже ±1 или 250 букв. В этих данных 100, и они аккуратненькие. Если вы начнете их обрезать по качеству, то у вас может это распределение совершенно изменить свою форму и станет, например, у вас будет чуть-чуть больших, куча помельче и огромная куча совсем коротких. Это плохо. Количество дуплицированных последовательностей. На самом деле, достаточно туманный, можно сказать, для гадания график, потому что их может здесь как быть, так и не быть, и что именно это значит, кроме того, что это именно количество повторяющихся последовательностей, сказать трудно, и как от этого избавляться, тоже я вам ничем не подскажу. Смотрите, теперь мы добрались до единственной мини-проблемы, которая у нас тут есть, — сверхпредставленные последовательности. То есть у нас есть в наших данных, которые мы скачали, есть последовательности, которые здесь указаны в указанных количествах, которые встречаются как-то слишком часто, чем можно было бы ожидать. И так случается, что оказывается, они совпадают с чем-то, что есть в базе данных этой программы, а именно это адаптеры, точнее, это праймеры, ПЦР праймеры, от набора для секвенирования Illumina. Удивлены ли мы, что это здесь увидели? Нет, не удивлены, потому что данные были сделаны на Illumina, готовились с помощью этого кита, оно должно там быть. Много ли их тут — нет, и поэтому это небольшая проблема, то есть можно запустить дополнительную чистку, именно убрать последовательности, где встречается этот праймер. Но их тут немного, поэтому для нашей задачи это несильно повлияет. Если вы делаете какой-нибудь идеальный метагеном или еще что-нибудь, то, конечно, вы это уберете, но это не так и трудно делается. Поскольку вот видите, у нас есть некоторые сверхпредставленные последовательности, а, опять же, праймер находится в начале рида, то вот отсюда именно это — неслучайность, которую мы тут видим, о которой я вам обещал рассказать. То есть у некоторого, небольшого числа ридов в начале последовательности есть адаптер от Illumina. Ну и последний график, который светится здесь красным, потому что он считает, что здесь что-то не то, это содержание Kmer'ов, и здесь мы видим ровно то же самое. У нас в начале наших последовательностей есть какое-то количество фрагментов, которые встречаются, то есть они не совсем случайно распределены. То есть опять же нам не страшно, мы знаем причину, мы знаем, что их там немного, и мы надеемся, что они нам не помешают. Если бы мы делали серьезную научную работу, мы бы их, конечно, убирали. Но это нам в некотором роде усложняет дальнейшую работу, и поэтому мы пока будем делать так. Будем считать, что это для продвинутых будет курс, где мы еще все это убираем, потому что вариантов о том, как убирать и что именно делать, есть и так уйма, и каждый считает, что он делает по-своему правильно. Ну что, мы сделали все подготовительные части: мы скачали данные, мы проверили их качество и выяснили, что мы можем с ними работать дальше, и следующий этап у нас будет этап сборки этих ридов в последовательности. Делать мы это будем с помощью программы MetaSpace, о которой я расскажу вам дальше.