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 имя аргумента и 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

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

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

Примечание

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

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

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

свернуть все

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

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

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

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

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

| |

Введенный в R2017b