exponenta event banner

запонки

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

Описание

пример

cufflinks(alignmentFiles) собирает транскриптом из выровненного чтения в alignmentFile и количественно определяет уровень экспрессии для каждого транскрипта [1]. По умолчанию функция записывает результаты в файл GTF с именем transcripts.gtf в текущем каталоге.

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

Примечание

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

cufflinks(alignmentFiles,cufflinksOptions) использует дополнительные параметры, указанные cufflinksOptions.

cufflinks(alignmentFiles,Name,Value) использует дополнительные параметры, заданные одним или несколькими аргументами пары имя-значение. Например, cufflinks(alignmentFile,'TrimCoverageThreshold',5) задает минимальный средний охват для обрезки 3 '.

[transcripts,isoforms,genes,skippedTranscripts] = cufflinks(___) возвращает имена файлов собранного транскриптома, используя любую из комбинаций входных аргументов из предыдущих синтаксисов. По умолчанию функция сохраняет все файлы в текущей папке.

Примеры

свернуть все

Создать 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.

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

свернуть все

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

Пример: 'Myco_1_1.sam'

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

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

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

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

Пример: cufflinks(alignmentFile,'TrimCoverageThreshold',5,'FragmentLengthMean',180)

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

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

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

Дополнительные команды, заданные как строковый или символьный вектор.

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

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

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

Флаг для включения эталонных транскриптов в собранный вывод в качестве faux-reads во время сборки RABT (расширенный стенограмма на основе эталонных аннотаций), указанный как true или false.

Примечание

Функция выполняет сборку RABT только при указании GTFGuide. В противном случае FauxReadTiling, независимо от бытия true или false, не оказывает влияния на собранный стенограмм.

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

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

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

Пример: 'FragmentBiasCorrection','ref.fasta'

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

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

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

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

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

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

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

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

Пример: 'GTFGuide','tr.gtf'

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

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

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

Примечание

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

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

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

Количество базовых пар из считывания, допускающих перекрытие с интроном транскрипта при определении, может ли чтение быть сопоставлено с другим транскриптом во время сборки RABT, определяемым как положительное целое число. Значение по умолчанию: 8.

Примечание

Функция выполняет сборку RABT только при указании GTFGuide. В противном случае RABTOverhangTolerance не оказывает влияния на собранный стенограмм.

Пример: 'IntronOverhangTolerance',10

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

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

Пример: 'JunctionAlpha',0.005

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

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

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

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

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

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

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

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

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

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

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

Пример: 'MaxBundleLength',3400000

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

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

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

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

Максимальное количество баз в интроне для отчета, указанное как положительное целое число. cufflinks также игнорирует выравнивания SAM с операциями REF_SKIP CIGAR дольше, чем это значение свойства.

Пример: 'MaxIntronLength',350000

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

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

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

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

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

Пример: 'MinFragsPerTransfrag',15

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

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

Пример: 'MinIntronLength',50

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

Значение манжеты для сообщения о количестве конкретной изоформы как доли наиболее распространенной изоформы (основной изоформы), определяемой как скаляр между 0 и 1. Функция отфильтровывает транскрипты с изобилием ниже указанного значения, поскольку изоформы, выраженные на низких уровнях, часто не могут быть надежно собраны. Значение по умолчанию составляет 0,1 или 10% основной изоформы гена.

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

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

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

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

Пример: true

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

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

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

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

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

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

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

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

Пример: 'NumFragAssignmentSamples',40

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

Число вытягиваний из отрицательного биномиального генератора случайных чисел для каждого транскрипта, заданного как положительное целое число. Каждый розыгрыш представляет собой ряд фрагментов, которые функция вероятностно присваивает транскриптам в транскриптоме для определения неопределенности назначения и оценки матрицы дисперсии-ковариации для назначенных счетчиков фрагментов.

Пример: 'NumFragSamples',90

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

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

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

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

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

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

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

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

Пример: 'OverhangTolerance',5

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

Количество пар оснований, допускающих свес 3 '-конца каждого эталонного транскрипта во время сборки RABT, указанное как положительное целое число. Функция использует это свойство при принятии решения о том, является ли собранный стенограмма новым или должен быть объединен со ссылкой.

Примечание

Функция выполняет сборку RABT только при указании GTFGuide. В противном случае RABTOverhangTolerance3 не оказывает влияния на собранный стенограмм.

Пример: 'OverhangTolerance3',500

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

Расстояние между переносами, указанное как положительное целое число. Если расстояние ниже указанного значения, функция объединяет трансфраги. Значение по умолчанию: 50 базовые пары.

Пример: 'OverlapRadius',40

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

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

Пример: 'PreMRNAFraction',0.10

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

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

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

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

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

Пример: 'Seed',10

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

Минимальный процент выравнивания на каждой стороне соединения соединения, заданный как скаляр между 0 и 1. Функция фильтрует трассы с процентом, меньшим, чем это значение свойства перед сборкой.

Пример: 'SmallAnchorFraction',0.1

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

Префикс для передаваемых сообщений в выходном GTF-файле, указанный как строковый или символьный вектор. Этот параметр должен быть строковым или символьным вектором с ненулевой длиной.

Пример: 'TranscriptPrefix',"tfrags"

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

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

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

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

Минимальный процент среднего покрытия для обрезки 3 '-конца собранных транскриптов, указанный как скаляр между 0 и 1.

Пример: 'TrimDropoffFraction',0.15

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

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

свернуть все

Имя файла стенограммы, возвращаемое в виде строки. Имя файла: "transcripts.gtf". Файл содержит собранные изоформы, а также атрибуты, описывающие обилие операций чтения, происходящих из каждого стенограммы.

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

Предполагаемое имя файла выражения уровня изоформы, возвращаемое в виде строки. По умолчанию имя файла: "isoforms.fpkm_tracking". Файл содержит оценки для выражения уровня изоформы в cufflinks Формат отслеживания FPKM.

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

Предполагаемое имя файла экспрессии на уровне генов, возвращаемое в виде строки. По умолчанию имя файла: "genes.fpkm_tracking". Файл содержит оценки экспрессии на уровне генов в cufflinks Формат отслеживания FPKM.

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

Имя файла, содержащего пропущенные транскрипты при обработке локуса, возвращаемое в виде строки. По умолчанию имя файла: "skipped.gtf". 'MaxBundleFrags' параметр указывает максимальное количество транскриптов (фрагментов), включаемых для каждого локуса. После достижения порогового значения функция помещает пропущенные фрагменты в этот файл.

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

Ссылки

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

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

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