seqfilter

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

Синтаксис

seqfilter(fastqFile)
seqfilter(fastqFile,Name,Value)
[outFiles,nSeqIn,nSeqOut] = 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 должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: 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.

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

Примечание

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

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

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

свернуть все

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

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

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

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

Смотрите также

| |

Введенный в R2017b