exponenta event banner

cuffmerge

Объединение сборок RNA-seq

Описание

пример

mergedGTF = cuffmerge(gtfFiles) объединяет собранный транскриптом из двух или более GTF-файлов [1]. Объединение GTF-файлов является необходимым шагом для выполнения нисходящего дифференциального анализа с cuffdiff.

cuffmerge требуется установка в системе программы Python ® 2.

cuffmerge требуется пакет поддержки «Запонки» для Toolbox™ биоинформатики. Если пакет поддержки не установлен, функция предоставляет ссылку для загрузки. Дополнительные сведения см. в разделе Пакеты поддержки ПО для панели инструментов биоинформатики.

Примечание

cuffmerge поддерживается только на платформах Mac и UNIX ®.

mergedGTF = cuffmerge(gtfFiles,opt) использует дополнительные параметры, указанные opt.

mergedGTF = cuffmerge(gtfFiles,Name,Value) использует дополнительные параметры, заданные одним или несколькими аргументами пары имя-значение. Например, cuffmerge(["Myco_1_1.transcripts.gtf","Myco_1_2.transcripts.gtf"],'NumThreads',5) указывает на использование пяти параллельных потоков.

Примеры

свернуть все

Создать CufflinksOptions объект для определения параметров cfflinks, таких как количество параллельных потоков и папка вывода для хранения результатов.

cflOpt = CufflinksOptions;
cflOpt.NumThreads = 8;
cflOpt.OutputDirectory = "./cufflinksOut";

Файлы SAM, представленные в этом примере, содержат выровненные чтения для Mycoplasma pneumoniae из двух образцов с тремя репликациями каждый. Считывание моделируется 100 bp для двух генов (gyrA и gyrB) расположены рядом друг с другом на геноме. Все операции чтения сортируются по ссылочному положению, как требуется cufflinks.

sams = ["Myco_1_1.sam","Myco_1_2.sam","Myco_1_3.sam",...
        "Myco_2_1.sam", "Myco_2_2.sam", "Myco_2_3.sam"];

Соберите транскриптом из выровненных считываний.

[gtfs,isofpkm,genes,skipped] = cufflinks(sams,cflOpt);

gtfs - список GTF-файлов, содержащих собранные изоформы.

Сравнение собранных изоформ с помощью cuffcompare.

stats = cuffcompare(gtfs);

Объединить собранные стенограммы с помощью cuffmerge.

mergedGTF = cuffmerge(gtfs,'OutputDirectory','./cuffMergeOutput');

mergedGTF сообщает только одну стенограмму. Это потому, что два интересующих гена расположены рядом друг с другом, и cuffmerge не может различить два различных гена. Вести cuffmerge, использовать эталонный GTF (gyrAB.gtf), содержащий информацию об этих двух генах. Если файл находится не в том же каталоге, в котором выполняется cuffmerge из, необходимо также указать путь к файлу.

gyrAB = which('gyrAB.gtf');
mergedGTF2 = cuffmerge(gtfs,'OutputDirectory','./cuffMergeOutput2',...
			'ReferenceGTF',gyrAB);

Рассчитайте плотность (уровни выражений) на основе выровненных чтений для каждого образца.

abundances1 = cuffquant(mergedGTF2,["Myco_1_1.sam","Myco_1_2.sam","Myco_1_3.sam"],...
                        'OutputDirectory','./cuffquantOutput1');
abundances2 = cuffquant(mergedGTF2,["Myco_2_1.sam", "Myco_2_2.sam", "Myco_2_3.sam"],...
                        'OutputDirectory','./cuffquantOutput2');

Оцените значимость изменений в экспрессии генов и транскриптов между состояниями, выполнив дифференциальное тестирование с использованием cuffdiff. cuffdiff функция работает в два отдельных шага: функция сначала оценивает изобилие из выровненных считываний, а затем выполняет статистический анализ. В некоторых случаях (например, распределение вычислительной нагрузки между несколькими работниками) выполнение этих двух шагов по отдельности является желательным. После выполнения первого шага с cuffquant, затем можно использовать двоичный выходной файл CXB в качестве входных данных для cuffdiff для выполнения статистического анализа. Поскольку cuffdiff возвращает несколько файлов, укажите рекомендуемый выходной каталог.

isoformDiff = cuffdiff(mergedGTF2,[abundances1,abundances2],...
                      'OutputDirectory','./cuffdiffOutput');

Отображение таблицы, содержащей результаты теста дифференциальной экспрессии для двух генов gyrB и gyrA.

readtable(isoformDiff,'FileType','text')
ans =

  2×14 table

        test_id            gene_id        gene              locus             sample_1    sample_2    status     value_1       value_2      log2_fold_change_    test_stat    p_value    q_value    significant
    ________________    _____________    ______    _______________________    ________    ________    ______    __________    __________    _________________    _________    _______    _______    ___________

    'TCONS_00000001'    'XLOC_000001'    'gyrB'    'NC_000912.1:2868-7340'      'q1'        'q2'       'OK'     1.0913e+05    4.2228e+05          1.9522           7.8886      5e-05      5e-05        'yes'   
    'TCONS_00000002'    'XLOC_000001'    'gyrA'    'NC_000912.1:2868-7340'      'q1'        'q2'       'OK'     3.5158e+05    1.1546e+05         -1.6064          -7.3811      5e-05      5e-05        'yes'   

Вы можете использовать cuffnorm для создания нормализованных таблиц выражений для дальнейшего анализа. cuffnorm результаты полезны, когда у вас есть много образцов, и вы хотите сгруппировать их или построить график уровней экспрессии для генов, которые важны в вашем исследовании. Обратите внимание, что невозможно выполнить дифференциальный анализ выражений с помощью cuffnorm.

Укажите массив ячеек, где каждый элемент является строковым вектором, содержащим имена файлов для одного образца с репликациями.

alignmentFiles = {["Myco_1_1.sam","Myco_1_2.sam","Myco_1_3.sam"],...
                  ["Myco_2_1.sam", "Myco_2_2.sam", "Myco_2_3.sam"]}
isoformNorm = cuffnorm(mergedGTF2, alignmentFiles,...
                      'OutputDirectory', './cuffnormOutput');

Отображение таблицы, содержащей нормализованные уровни выражений для каждого транскрипта.

readtable(isoformNorm,'FileType','text')
ans =

  2×7 table

      tracking_id          q1_0          q1_2          q1_1          q2_1          q2_0          q2_2   
    ________________    __________    __________    __________    __________    __________    __________

    'TCONS_00000001'    1.0913e+05         78628    1.2132e+05    4.3639e+05    4.2228e+05    4.2814e+05
    'TCONS_00000002'    3.5158e+05    3.7458e+05    3.4238e+05    1.0483e+05    1.1546e+05    1.1105e+05

Имена столбцов, начинающиеся с q, имеют формат conditionX_N, указывающий, что столбец содержит значения для репликации N условия X.

Входные аргументы

свернуть все

Имена GTF-файлов, указанных как строковый вектор или массив ячеек символьных векторов.

Пример: ["Myco_1_1.transcripts.gtf", "Myco_1_2.transcripts.gtf"]

Типы данных: string | cell

cuffgffread опции, указанные как CuffMergeOptions объект, строка или символьный вектор. Вектор строки или символа должен быть в оригинале cuffmerge синтаксис параметра (префикс одного или двух тире) [1].

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: cuffmerge(["Myco_1_1.transcripts.gtf","Myco_1_2.transcripts.gtf"],'NumThreads',5)

Команды должны иметь собственный синтаксис (префикс одного или двух тире). Эта опция используется для применения флагов и флагов без документов без соответствующих свойств MATLAB ®.

Пример: 'ExtraCommand','--library-type fr-secondstrand'

Типы данных: char | string

Исходный (собственный) синтаксис префиксируется одним или двумя тире. По умолчанию функция преобразует только указанные опции. Если значение равно true, программа преобразует все доступные опции со значениями по умолчанию для неуказанных опций в исходный синтаксис.

Примечание

Если установить IncludeAll кому true, программа преобразует все доступные свойства со значениями по умолчанию для неопределенных свойств. Единственным исключением является то, что если значением по умолчанию свойства является NaN, Inf, [], '', или "", то программное обеспечение не переводит соответствующее свойство.

Пример: 'IncludeAll',true

Типы данных: logical

Минимальное количество изоформы, включаемое в объединенную сборку, указанное как скаляр между 0 и 1. Это значение выражается в процентах от наиболее распространенной (основной) изоформы.

Пример: 'MinIsoformFraction',0.4

Типы данных: double

Число параллельных потоков для использования, указанное как положительное целое число. Потоки выполняются на отдельных процессорах или ядрах. Увеличение количества потоков, как правило, значительно улучшает время выполнения, но увеличивает объем памяти.

Пример: 'NumThreads',4

Типы данных: double

Каталог для хранения результатов анализа, указанный как строковый или символьный вектор.

Пример: 'OutputDirectory',"./AnalysisResults/"

Типы данных: char | string

Имя необязательного файла аннотации ссылки GTF для включения в комбинированную сборку, определяемое как вектор строки или символа.

Пример: 'ReferenceGTF',"ref.gtf"

Типы данных: char | string

Имя каталога или файла FASTA, содержащего последовательности геномной ДНК для ссылки, указанного как строковый или символьный вектор.

  • Если указан каталог, он должен содержать один файл FASTA на контиг. Другими словами, каталог должен содержать один файл FASTA на эталонную хромосому, и каждый файл должен быть назван в честь хромосомы и иметь .fa или .fasta расширение.

  • Если указан файл FASTA, он должен содержать все ссылочные последовательности.

Функция использует предоставленные последовательности для улучшения классификации передачи и исключения артефактов.

Пример: 'ReferenceSequence',"allrefs.fasta"

Типы данных: char | string

Выходные аргументы

свернуть все

Имя выходного GTF-файла, содержащего объединенный транскриптом, возвращаемое в виде строки.

Выходная строка также включает информацию каталога, определенную OutputDirectory. По умолчанию функция

  • Создает подпапку merged_asm в текущей папке и сохраняет выходной файл (merged.gtf) в этой папке.

  • Создает подпапку с именем logs в merged_asm папке и сохраняет файл журнала.

Если установить OutputDirectory кому "/local/tmp/", mergedGTF становится "/local/tmp/merged.gtf". Функция также создает папку журналов в указанной папке вывода.

Ссылки

[1] Трапнелл, Коул, Брайан А Уильямс, Гео Пертеа, Али Мортазави, Гордон Кван, Марике Дж. ван Барен, Стивен Л Зальцберг, Барбара Дж. Уолд и Лиор Пэхтер. «Сборка и количественная оценка транскриптов с помощью РНК-Seq выявляет необъявленные транскрипты и переключение изоформ во время дифференцировки клеток». Биотехнология природы 28, № 5 (май 2010 года): 511-15.

Представлен в R2019a