Оценка покрытия генов и секвенированных видов в NCBI для реконструкции больших филогений

By | 7 July 2015

Одной из наиболее частых задач, с которыми сталкиваются эволюционные биологи в процессе построения филогенетических деревьев и их анализа, является необходимость дополнения существующих последовательностей (например, полученных в лаборатории de novo) последовательностям уже существующими в базе GenBANK. Данная задача обычно сводиться к двум подзадачам: определение покрытия генов в базе (как много уникальных видов было осеквенировано для каждого гена) и загрузка с помощью BLAST уникальных последовательностей для наиболее покрытых генов

Для простоты рассмотрим следующий характерный случай – вы отсеквенировали несколько видов из семейства Balanophoraceae для двух участков: 5.8S ribosomal RNA и 18S ribosomal RNA и теперь хотите:

  • Оценить какие виды Balanophoraceae были отсеквенированы ранее и присутствуют в базе Генбанк
  • Загрузить последовательности для данных генов
  • Объединить последовательности с тем, что вы получили в лаборатории
  • Реконструировать филогенетическое дерево из всех доступных генов для всего семейства Balanophoraceae

Чтобы не делать этот туториал слишком длиным, мы рассмотрим первый шаг здесь, а 2, 3 и 4 в следующих туториалах (подпишитесь на рассылку от InsideDNA.me)

Оценка того, какие виды Balanophoraceae species были отсеквенированы и для каких генов

  1. Регистрация.

Создайте аккаунт на сайте InsideDNA. После того, как вам придет письмо-уведомление, нужно будет заполнить небольшую анкету (~3 минуты) и после этого вы получите полный доступ на сайт.

1

  1. Общий принцип работы InsideDNA

В InsideDNA есть три основые закладки для работы – они расположены в главном меню навигации и называются Tools, Tasks и Files. В этих закладках можно делать следующее:

  • В меню Инструменты (Tools) можно искать различные биоинформатические и биологические инструменты (скрипты, программы, пайплайны), организовывать их в проекты и запускать
  • В меню Задачи (Tasks) можно мониторить процесс выполнения задачек и совершенать над ними некоторые операции (ниже об этом подробнее)
  • В меню Файлы (Files) можно управлять своими данными и файлами так, как если бы они были расположены на вашем компьютере. На данном этапе каждый пользователь получает 10 Гигобайт места сайте.
  • 2

     

    1. Создание нового проекта.

    Для того, чтобы создать новый рабочий проект нажмите кнопку +Add new project в левом меню 3   Назовите проект Balanophoraceae.

    4

    Теперь, мы можем добавить инструменты в проект – это удобно для работы, так как позволяет легко организовывать инструменты и не тратить время на их поиск и в будущем настройку. Добавим два инструмента в проект – в строке поиска наберите: geneCoverage

    5

    Затем нажмите на кнопку плюс на инструменте и выберите из списка проект Balanophoraceae.

    6

    Повторите операцию для инструмента geneCoverage2fasta – добавьте его в проект.

    1. Инициализация и настройка задачи

    Далее, просто выберите проект Balanophoraceae в левом меню – там вы увидите два добавленных инструмента и нажмите на кнопку Run Tool на geneCoverage. Более детальную информацию о каждом инструменте можно получить нажав кнопку Read More.

    7

     

    1. Выберите настройки инструмента

    После того, как вы нажмете на Run Tool появится окно настройки инструмента. 8 Здесь нужно указать: название задачи, и параметры инструмента. Затем мы нажмем окно препросмотра задачи и запустим ее. Укажите такое имя задачи, которую вам легко запомнить и идентифицировать в будущем – например, Balan_geneCov 9 geneConverage очень простой инструмент. Вам нужно всего лишь указать таксон, в пределеах которого будет осуществляться оценка покрытия по базе ГенБанк и выбрать директорию в которую будут сохранены результаты. Мы указываем следующее:

    10

    Balanophoraceae в качестве входного таксона (т.е. мы ищем все последовательности для видов внутри данного семейства).
    Далее нам нужно нажать кнопку Browse, которая вызывает диалоговое окно мини Файл менеджера. Этот мини файл менеджер позволяет быстро указывать входные и выходные файлы и папки для инструмента, а также создавать новые папки. Так как у нас пока не создано папки проекта нажмен на кнопку Плюс и создадим новую директорию Balanophoraceae_project. Это будет наша рабочая директория для данных

    11

    Выберем эту папку (нажмите Select). Все выходные данные автоматически будут скопированы в эту папку.

    13

    Хорошая практика – всегда проверять синтаксис команды перед отправкой – для большинства инструментов это позволяет еще и познакомиться с тем, какие параметры мы бы могли указать в командной строке. Для предпросмотра задачки нажмите Preview task

    14

    Если вы довольны выбраными настройками, последний важный шаг это выбор Очереди для задачи. Разные Очереди дают доступ к разным вычислительным мощностям и хорошая идея сначала запустить задачу в более «слабой» очереди преждем чем переходить к мощным серверам. Для нашей задачи нам хватит очереди с 4Гб рам.

    15

      После того, как вы выбрали очередь нажмите кнопку Submit task. После отправки перед вами появится диалоговое окно, где вам будет предложено либо остаться на текущей странице с Настройками инструмента (Stay on the page), либо перейти в раздер мониторинга задач (View submitted task). Остаться на текущей странице бывает удобно, когда необходимо отправить много похожих задачек меняя например только входные данные или некоторые параметры в настройках. Выберите Go to Tasks

    16

    1. Мониторинг задачи.

    В Задачах есть несколько опций: 1) Задачи сгруппированы по статусам. Обычно, если задача обрабатывается без ошибок, то тогда в начале она появится в группе со статусом Running и после завершения будет перемещена в группу Completed.

    17

    Иногда, если вы отправили более 5 задач одновременно, то 6ая задача и далее будет помещена в группу Suspended (ожидание). Как только освободиться слот в текущем блоке задачек, одна из задач в группе Suspended будет перемещена в группу Running. В некоторых случаях, задачи могут ломаться и тогда они появляются в группе Failed. Основные причины по которым задачи могут ломаться – это недостаток вычислительных ресурсов и некорректные настройки инструмента. Мы рассмотрим варианты того, как можно выяснить в чем проблема 18 2) Управление Задачами. Взаимодействие с задачами осуществляется либо с помощью главному меню, либо раскрывающегося меню

    19

    3) Просмотр задач. Любую задачу можно просмотреть и проверить лог-ошибок. Это позволит например выяснить какие настройки были использованы, а также просмотреть ошибки.

    20

    После того, как мы отправили задачку , она сначала появится в группе Running и будет там находится несколько минут, пока проводятся вычисления. 21 После завершения – задача будет перемещена в группу Complеted

    1. Получение и просмотр выходных файлов

    Теперь перейдем во вкладку файлового менеджера (FM). Нажмите на Files и выберите Balanophoraceae_project. В этой папке вы увидете созданные выходные файлы. По нашей задаче будет создано два файлы – оригинальный файл GenBank и csv файл. 23 Нам наиболее важна табличка csv . Просмотрим содержимое этого файла нажав на Preview кнопку в правом меню

    24

    Выглядит, как нам удалось выяснить покрытие по видам. Теперь необходимо скачать файл и воспользоваться программой R, чтобы выяснить наиболее представленные (в плане видов) гены. Выберите файл и нажмите кнопку download

    25

    1. Интерпретация результатов и их анализ в R

    Теперь мы знаем какие гены и для каких видов были отскевенированы для Balanophoraceae и хотим выяснить, для каких генов отсеквенировано больше всего уникальных видов – ведь именно это позволят нам реконструировать дерево с наибольшим покрытием и запустить поиск BLAST. Для этого скопируйте функцию для R и проанализируйте файл Balanophoraceae.csv:

    gbSum <- function(in_csv_file){
        dd <- read.csv(in_csv_file, head = FALSE, stringsAsFactors = FALSE)
        rr <- data.frame(table(dd[, 1]))
        for (i in 1:dim(rr)[1]){
                rr[i, 3] <- dd[which(dd[, 1] == rr[i, 1]),][which(dd[which(dd[, 1] == rr[i, 1]),][, 3] == max(dd[which(dd[, 1] == rr[i, 1]),][, 3]))[1], 2]
                rr[i, 4] <- length(unique(dd[, 4][which(dd[, 1] == rr[i, 1])]))
            }
        colnames(rr)<-c("gene_name","frequency","reference_seq","unique_species")
        return(rr)
    }
    gbSum("Balanophoraceae.csv")

    Не забудьте указать директорию (setwd команда R)  в которую вы сохранили файлик Balanophoraceae.csv file 26   Из полученнного саммари мы видим следующее:
    1) три гена с максимальным видовым покрытием

    • 18S ribosomal RNA (15 уникальных видов)
    • 28S ribosomal RNA (7 уникальных видов)
    • 5.8S ribosomal RNA (7 уникальных видов)

    2) Референсные последовательности для данных генов: L24044.1 (18S) JN392881.1 (28S и 5.8S rRNA общая рефернсная последовательность)

    3) теперь мы должны приготовить текстовый файлик с разделителем табуляция где первая колонка – это референсная последовательность (относительно нее будет запущен BLAST) и название гена (для создания выходных файлов): 27