exponenta event banner

cuffquant

Количественная оценка профилей экспрессии генов и транскриптов

Описание

пример

cxbFile = cuffquant(transcriptsAnnot,alignmentFiles) генерирует оценки плотности для образцов в alignmentFiles использование ссылочного файла аннотаций transcriptsAnnot [1]. В качестве входных данных для можно использовать сгенерированное значение плотности в формате CXB (* .CXB). cuffdiff для выполнения анализа дифференциальных выражений в нисходящем направлении.

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

Примечание

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

cxbFile = cuffquant(transcriptsAnnot,alignmentFiles,opt) использует дополнительные параметры, указанные opt.

cxbFile = cuffquant(transcriptsAnnot,alignmentFiles,Name,Value) использует дополнительные параметры, заданные одним или несколькими аргументами пары имя-значение. Например, cuffquant('gyrAB.gtf',["Myco_1_1.sam", "Myco_2_1.sam"],'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 или GFF, созданным cufflinks, cuffcompareили другой источник аннотаций GTF.

Пример: "gyrAB.gtf"

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

Имена файлов SAM, BAM или CXB, содержащих записи выравнивания для каждого образца, указанного как строковый вектор или массив ячеек. При использовании массива ячеек каждый элемент должен быть строковым вектором или массивом символьных векторов, задающих файлы выравнивания для каждой копии одного образца.

Пример: ["Myco_1_1.sam", "Myco_2_1.sam"]

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

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

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

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

Пример: cuffquant(transcripts,alignmentFiles,'NumThreads',4,'Seed',1)

Флаг для нормализации количества фрагментов к фрагментам на килобазу на миллион отображенных операций чтения (FPKM), указанный как true или false.

Пример: 'EffectiveLengthCorrection',false

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

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

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

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

Имя файла FASTA со ссылочными транскриптами для обнаружения смещения в подсчетах фрагментов, указанных как строковый или символьный вектор. Библиотечный препарат может вводить последовательность-специфическое смещение в эксперименты РНК-Seq. Предоставление эталонных транскриптов повышает точность оценок численности транскриптов.

Пример: 'FragmentBiasCorrection',"bias.fasta"

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

Ожидаемая средняя длина фрагмента, заданная как положительное целое число. Значение по умолчанию: 200 базовые пары. Функция может узнать среднее значение длины фрагмента для каждого файла SAM. Использование этого параметра не рекомендуется для парных операций чтения.

Пример: 'FragmentLengthMean',100

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

Ожидаемое стандартное отклонение для распределения длины фрагмента, указанное как положительный скаляр. Значение по умолчанию: 80 базовые пары. Функция может узнать стандартное отклонение длины фрагмента для каждого файла SAM. Использование этого параметра не рекомендуется для парных операций чтения.

Пример: 'FragmentLengthSD',70

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

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

Примечание

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

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

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

Флаг для исправления по длине транскрипта, указанный как true или false. Задайте для этого значения значение false только когда количество фрагментов не зависит от размера признаков, например, для небольших библиотек РНК без фрагментации и для 3 '-концевого секвенирования, где все фрагменты имеют одинаковую длину.

Пример: 'LengthCorrection',false

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

Имя файла GTF или GFF, содержащего транскрипты, игнорируемые при анализе, указанное как строковый или символьный вектор. Некоторые примеры транскриптов, которые следует игнорировать, включают аннотированные транскрипты рРНК, митохондриальные транскрипты и другие обильные транскрипты. Игнорирование этих транскриптов улучшает надежность оценок изобилия.

Пример: 'MaskFile',"excludes.gtf"

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

Максимальное количество фрагментов, включаемых для каждого локуса перед пропуском новых фрагментов, указанное как положительное целое число. Пропущенные фрагменты помечаются статусом HIDATA в файле skipped.gtf.

Пример: 'MaxBundleFrags',400000

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

Максимальное число выровненных операций чтения, включаемых для каждого фрагмента перед пропуском новых операций чтения, указанное как положительное целое число. Inf, значение по умолчанию, не устанавливает ограничения на максимальное количество выровненных чтений.

Пример: 'MaxFragAlignments',1000

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

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

Пример: 'MaxMLEIterations',4000

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

Минимальное количество выравниваний, необходимое в локусе для выполнения проверки значимости различий между выборками, указанное как положительное целое число.

Пример: 'MinAlignmentCount',8

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

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

Способ спасения описан в [2].

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

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

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

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

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

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

Пример: "./AnalysisResults/"

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

Начальное число для генератора случайных чисел, указанное как неотрицательное целое число. Установка начального значения обеспечивает воспроизводимость результатов анализа.

Пример: 10

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

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

свернуть все

Имя файла изобилий, возвращаемое в виде строки.

Выходная строка также включает информацию каталога, определенную OutputDirectory. По умолчанию используется текущий каталог. Если установить OutputDirectory кому "/local/tmp/", выход становится "/local/tmp/abundances.cxb".

Ссылки

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

[2] Мортазави, Али, Брайан А Уильямс, Кеннет Маккью, Лориан Шеффер и Барбара Уолд. «Картирование и количественное определение транскриптомов млекопитающих с помощью РНК-Seq». Методы природопользования 5, № 7 (июль 2008 года): 621-28. https://doi.org/10.1038/nmeth.1226.

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