Сегодня мы продолжаем представлять инструмент для аннотирования и количественной оценки транскриптов с использованием трех поколений полноразмерных данных транскриптов. - Bambu。от Сингапурского агентства по науке, технологиям и исследованиям (A-STAR) изJonathan Göke(картина1)продолжительность разработкиRNA-seqИнструменты транскриптомного анализаBambu,Опубликовано в журнале «Nature Methods» 12 июня 2023 г.,НазваниеContext-aware transcript quantification from long-read RNA-seq data with Bambu。Этот инструмент основан на машинном обучении для идентификации и характеристики новых транскриптов.,Это позволяет проводить анализ адаптивности различных видов и образцов.
Однако большинство методов количественной оценки транскриптов основаны на файлах аннотаций фиксированных ссылок на гены;,Настоящие транскриптомы динамичны.,Надо судить по ситуации на данный момент.,Файлы статических аннотаций транскриптома содержат неактивные транскрипты (изоформы) некоторых генов.,иверно Некоторые гены имеют неполную аннотацию.。Bambu,Метод, использующий данные секвенирования длинной РНК.,Узнать Метод идентификации транскриптов на основе машинного обучения,Осуществите количественную оценку транскриптов в реальных данных секвенирования. Для выявления новых транскриптов,Bambu Предполагаемая скорость открытия новых discovery rate),объяснимый、Откалиброванный по точности отдельный параметр заменяет произвольный порог для одной выборки。Bambu Сохраняет полноразмерные и уникальные последовательности транскриптов в присутствии неактивных транскриптов (изоформ). может выполнить точную количественную оценку. По сравнению с существующими методами идентификации транскриптов,Bambu Повышенная точность достигается без потери чувствительности.。Динамическая аннотация, основанная на реальных данных, улучшает количественную оценку новых и известных транскриптов.。Воспользуйтесь преимуществом длительного чтенияRNAСеквенирование данных и машинное обучение,Bambu Облегчает точную идентификацию и количественную оценку транскриптов (рис. 2).
Bambu это Воспользуйтесь преимуществом длительного чтенияRNA-SeqДанные для идентификации и количественной оценки транскриптов в нескольких образцахпакет R。Выполнение сравнения последовательностейверноназад,Можно использоватьBambu Получите известные и новые транскрипты и уровни экспрессии генов.。Bambu Выходные данные можно использовать непосредственно для визуализации и последующего анализа, например, дифференциальной экспрессии генов или использования транскриптов.
Bambu Процесс анализа можно разделить на четыре этапа (рис. 3. a-d):первый,Использование вероятностной модели,Используйте справочные аннотации、Геномные последовательности и особенности, извлеченные из данных (подробные характеристики можно найти в разделе «Методы») для коррекции соотношения областей или сайтов соединения РНК. Исправленные последовательности, использующие один и тот же сайт разреза, были объединены в одну последовательность. (Read class, RCs)。Шаг 2,Интегрируйте объединенные последовательности из всех образцов (Читать классы), а также новый уровень открытий в выборках открытия, Чтение меньше). определенные порога. Последовательности класса NDR классифицируются как новые транскрипты.,и добавьте новую аннотированную расшифровку к аннотации эталонной расшифровки,Сформируйте библиотеку аннотаций на основе реальных образцов.(Расширенные оригинальные справочные примечания)。Шаг 3,Аннотация гена с использованием расширенной ссылки,Переклассифицируйте каждую последовательность классов Read и дайте ей название. в этом процессе,С тех порверно Неточные совпадения последовательностей, вызванные ошибками, можно исправить.。Шаг 4,Аннотация гена с использованием расширенной ссылки,верно Транскрипты в каждом образце для окончательного количественного определения,Получите матрицу экспрессии генов/транскриптов.
Bambu: https://github.com/GoekeLab/bambu
Версия: v3.2.4
существоватьR
середина,илиRstudio
,илиRstudio-server
средасередина Запустите следующую команду для установки,Установка завершена, как показано на рисунке 4.
if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager") #Если BiocManager уже установлен, вы можете игнорировать эту строку команды
BiocManager::install("bambu")
предположение:потому чтополный транскриптом Объем данных обычно велик, а объем вычислений велик,Локальное программное обеспечение R, развернутое на обычном настольном компьютере или на вашем собственном ноутбуке.,Может занимать много памяти и вычислительных ресурсов.。предложение использовать сервер,развертывать Rstudio-server,Это подойдетсуществовать Хранение данных на сервереи Рассчитано。Специальная установкаразвертывать Пожалуйста, обратитесь к официальному сайту за инструкциями.:https://posit.co/download/rstudio-server/。
Используйте встроенные тестовые данные, чтобы подтвердить успешную установку Bambu.
#Загрузка пакета бамбука
library(bambu)
#Выполните следующие команды, чтобы импортировать данные секвенирования, эталонный геном, файлы аннотаций эталонного генома и выполнить полный транскриптоманализировать
test.bam <- system.file("extdata", "SGNex_A549_directRNA_replicate5_run1_chr9_1_1000000.bam", package = "bambu") #Читаем данные секвенирования
fa.file <- system.file("extdata", "Homo_sapiens.GRCh38.dna_sm.primary_assembly_chr9_1_1000000.fa", package = "bambu") #Читаем эталонный геном
gtf.file <- system.file("extdata", "Homo_sapiens.GRCh38.91_chr9_1_1000000.gtf", package = "bambu") #Читаем эталонный файл аннотации гена
bambuAnnotations <- prepareAnnotations(gtf.file) #Предварительная обработка аннотаций эталонного генома
se <- bambu(reads = test.bam, annotations = bambuAnnotations,genome = fa.file) #полный транскриптоманализировать
После запуска последней строки мы получаем --- Start isoform quantification ---
и--- Finished running Bambu ---
,Это означает, что Bambu запущен и успешно установлен.
Входной файл в режиме по умолчанию:
.bam
Формат файла。.gtf
документ。.fa
документ。Потому что документация Bambu не предлагает лучшего метода, чем верный.,Поэтому здесь используется обычно используемая длина.(long-read)Сравниватьвернопрограммное обеспечениеminimap2。
#Выберите соответствующую команду запуска на основе платформы секвенирования третьего поколения и метода построения библиотеки, одноэтапного метода.
$ minimap2 -ax splice:hq -uf ref.fa iso-seq.fq | samtools sort -@ 12 -o align.bam --write-index - # PacBio Iso-seq/traditional cDNA
$ minimap2 -ax splice ref.fa nanopore-cdna.fa | samtools sort -@ 12 -o align.bam --write-index - # Nanopore 2D cDNA-seq
$ minimap2 -ax splice -uf -k14 ref.fa direct-rna.fq | samtools sort -@ 12 -o align.bam --write-index - # Nanopore Direct RNA-seq
#Пошаговый пример
$ minimap2 -ax splice:hq -uf ref.fa iso-seq.fq | samtools view -@ 12 -bS | samtools sort -@ 12 -o align.bam # PacBio Iso-seq/traditional cDNA
$ minimap2 -ax splice ref.fa nanopore-cdna.fa | samtools view -@ 12 -bS | samtools sort -@ 12 -o align.bam # Nanopore 2D cDNA-seq
$ minimap2 -ax splice -uf -k14 ref.fa direct-rna.fq | samtools view -@ 12 -bS | samtools sort -@ 12 -o align.bam # Nanopore Direct RNA-seq
#вернобам Индексация файлов
$ samtools index align.bam
Уведомление:
samtools
,Обратите внимание на установленную версию..sam
Формат файла,Так что используйтеsamtools
Воля.sam
преобразован в.bam
,и использоватьsamtools sort
верно .bam
Сортировать,Ранназадиспользоватьsamtools index
индекс。Выше показан поворот в один шаг.bam
и Передача шаг за шагом.bam
Пример。samtools v1.18
Версия--write-index -
параметры; samtools v1.9
Нет версии。#Может читать несколько файлов примеров одновременно
samples <- c(S1.bam, S1.bam, S1.bam)
Если людии Мыши могутсуществоватьGencodeскачать,Если вы встретите другие виды, вы можете обратиться кEnsemblскачать。
annotations <- prepareAnnotations( *.gft )
#Сохраняем файл комментариев как файл rds
saveRDS(annotations, ”/path/to/annotations.rds” )
#Прочитайте файл комментариев в следующий раз
annotations <- readRDS("/path/to/annotations.rds")
se <- bambu(reads = samples, annotations = annotations, genome = genome.fa)
se.discoveryOnly <- bambu(reads = samples, annotations = annotations, genome = genome.fa, quant = FALSE)
se.quantOnly <- bambu(reads = samples, annotations = annotations, genome = genome.fa, discovery = FALSE)
novelAnnotations <- bambu(reads = test.bam, annotations = NULL, genome = fa.file, NDR = 0.5, quant = FALSE)
Для настройки конкретных параметров и отладки обратитесь к официальному GitHub.
Бамбу вернётSummarizedExperiment
Объект, доступ к которому можно получить через:
Извлеките выражение транскрипта, используя переменные (например, количество или CPM) в assays().:
Можно использоватьwriteBambuOutput()
Выведите полный файл результатов. Эта команда может создать три файла: 1. Расширенный..gtf
документ. 2. Подсчитайте матрицу экспрессии транскриптов. 3. Матрица экспрессии количества генов。
writeBambuOutput(se, path = "./bambu/")
Если вас интересуют только новые расшифровки, вы можете отфильтровать справочные аннотированные расшифровки.
se.novel = se[mcols(se)$novelTranscript,]
writeBambuOutput(se.novel, path = "./bambu/")
проходитьplotBambu
Гены/транскрипты можно визуализировать (рис. 5).。
plotBambu(se, type = "annotation", gene_id = "ENSG00000107104")
Структура и уровни экспрессии транскрипта tx.9 и других транскриптов соответствующих ему генов (рис. 6)。
plotBambu(se, type = "annotation", transcript_id = "tx.9")
проходитьplotBambu
Отображение примера группировки кластеров PCA (рис. 7)。