seqfilter

Отфильтровывайте последовательности на основе заданного критерия

Описание

пример

seqfilter(fastqFile) применяет критерий фильтрации к последовательностям в fastqFile и сохраняет последовательности, которые соответствуют критерию, в новом файле FASTQ. По умолчанию последовательности, которые проходят критерий, сохраняются под именами файлов с суффиксом '_filtered' приложенный. Если вы не задаете никакого критерия, функция фильтрует последовательности по умолчанию.

пример

seqfilter(fastqFile,Name,Value) использует дополнительные опции, заданные одним или несколькими Name,Value аргументы в виде пар.

[outFiles,nSeqIn,nSeqOut] = seqfilter(___) возвращает массив ячеек outFiles с именами файлов выхода. nSeqIn и nSeqOut представляют количество последовательностей, включенных и исключенных из каждого входного файла, соответственно.

Примеры

свернуть все

Фильтрация последовательностей с более чем 10% низкокачественных основ, где основа рассматривается как низкое качество, когда его счет качества менее 20.

 [outFile,in,out] = seqfilter('SRR005164_1_50.fastq',...
                              'Method','MaxPercentLowQualityBases',...
                              'Threshold',[10 20]) ;

Проверьте количество последовательностей, сохраненных в файле выхода.

in
in = 39

Проверьте количество отфильтрованных последовательностей.

out
out = 11

Отфильтровывают последовательности, имеющие средний счет качества ниже 20.

[outFile,in,out] = seqfilter('SRR005164_1_50.fastq',...
                             'Method','MeanQuality',...
                             'Threshold',20); 

Примените критерий фильтрации к каждым 10 основам в качестве скользящего окна.

[outFile,in,out] = seqfilter('SRR005164_1_50.fastq',...
                             'Method','MeanQuality',...
                             'Threshold',20,'WindowSize',10); 

Фильтрация последовательностей с менее чем 100 основами.

[outFile,in,out] = seqfilter('SRR005164_1_50.fastq',...
                             'Method','MinLength',...
                             'Threshold',100); 

Входные параметры

свернуть все

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

Пример: 'SRR005164_1_50.fastq'

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

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

Пример: 'Method','MaxNumberLowQualityBases','Threshold',[5 15] задает для фильтрации последовательностей с общим количеством более 5 низкокачественных основы, где основа рассматривается как низкокачественная основа, если ее счет качества меньше 15.

Критерий для фильтрации последовательностей, заданный как один из следующих опций. Задайте только один критерий фильтрации для каждого вызова функции.

  • 'MaxNumberLowQualityBases'- применяет максимальный порог по количеству разрешенных низкокачественных основ.

  • 'MaxPercentLowQualityBases'- применяет максимальный порог для процента допустимых низкокачественных основ.

  • 'MeanQuality'- применяет минимальный порог среднего базового качества для каждой последовательности.

  • 'MinLength'- применяет минимальный порог длины последовательности.

Используйте этот аргумент пары "имя-значение" вместе с 'Threshold' для определения соответствующего порогового значения. В зависимости от критерия фильтрации, соответствующее значение для 'Threshold' может быть скалярным или двухэлементным вектором. Смотрите 'Threshold' опция для значений по умолчанию. Если вы не задаете 'Threshold', тогда функция использует пороговое значение по умолчанию заданного метода. Для каждого критерия фильтрации функция использует базовый формат кодирования качества, заданный 'Encoding' аргумент пары "имя-значение".

Пример: 'Method','MaxNumberLowQualityBases','Threshold',[5 15]

Пороговое значение для критерия фильтрации, заданное в виде скаляра или вектора. Используйте эту пару "имя-значение", чтобы задать пороговое значение для критерия фильтрации, заданного 'Method'.

В зависимости от критерия фильтрации, соответствующее значение для 'Threshold' может быть скалярным или двухэлементным вектором. Если вы не задаете 'Threshold'затем функция использует пороговое значение по умолчанию соответствующего метода. Для каждого критерия фильтрации функция использует формат кодирования базового качества, заданный 'Encoding' аргумент пары "имя-значение".

'Method''Threshold'Значения по умолчанию 'Threshold' значение
'MaxNumberLowQualityBases'Двухэлементный векторный [V1 V2]. V1 является неотрицательным целым числом, которое задает максимальное допустимое количество низкокачественных основ. V2 задает минимальное базовое качество. Любая основа с качеством менее V2 считается низкокачественной основой. Любая последовательность, содержащая количество низкокачественных основ, больше V1, отфильтровывается и не сохраняется в файле выхода.[0 10]
'MaxPercentLowQualityBases'Двухэлементный векторный [V1 V2]. V1 является скаляром от 0 до 100, который задает максимальный процент допустимых низкокачественных основ. V2 задает минимальное базовое качество. Любая основа с качеством менее V2 считается низкокачественной основой. Любая последовательность, содержащая процент низкокачественных основ, больше V1, отфильтровывается и не сохраняется в файле выхода.[0 10]
'MeanQuality'Положительная скалярная величина, который задает минимальный порог среднего базового качества для каждой последовательности. Любая последовательность со средним качеством базы, меньше этого значения, отфильтровывается.0
'MinLength'Неотрицательное целое число, которое задает минимальный порог допустимой длины последовательности. Любая последовательность с длиной меньше этого значения отфильтровывается. 1

Пример: 'Method','MaxPercentLowQualityBases','Threshold',[10 20]

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

Значение по умолчанию является Inf, то есть критерий фильтрации применяется ко всей последовательности.

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

Базовый формат кодирования качества, заданный как вектор символов или строка.

Пример: 'Encoding','Sanger'

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

Пример: 'OutputDir','F:\results'

Суффикс для использования в имени выходного файла, заданный как вектор символов или строка. Оно вставляется после входа файла и перед расширением файла. Значение по умолчанию является '_filtered'.

Пример: 'OutputSuffix','_WindowSize100_filtered'

Рассматривать ли входные файлы как пары для данных последовательности с парным концом, задается как true или false.

Если trueфайлы входа считываются как пары, и данные последовательности поддерживаются синхронно между файлами. То есть, если последовательность отфильтрована в первом файле, соответствующая последовательность в парном файле также отфильтровывается.

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

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

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

Пример: 'PairedFiles',true,'WriteSingleton',true

Логическое значение, указывающее, выполнять ли расчеты параллельно, задается как true или false.

Для параллельных вычислений необходимо иметь Toolbox™ Parallel Computing. Если параллельный пул не существует, он создается автоматически, когда опция автоматического создания включена в ваших параллельных настройках. В противном случае расчет выполняется в последовательном режиме.

Примечание

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

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

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

свернуть все

Выходы файлов, возвращенные как массив ячеек из векторов символов.

Количество последовательностей, выбранных из каждого файла входов, возвращенных в виде скаляра или n -by- 1 вектор, где n количество файлов входа. Если существует несколько входных файлов, порядок в nSeqIn соответствует порядку входных файлов.

Количество последовательностей, исключенных из каждого файла входов, возвращаемых в виде скаляра или n -by- 1 вектор, где n количество файлов входа. Если существует несколько входных файлов, порядок в nSeqOut соответствует порядку входных файлов.

Расширенные возможности

См. также

| |

Введенный в R2016b
Для просмотра документации необходимо авторизоваться на сайте