BioRead

Содержат чтение последовательности и их данные о качестве

Описание

The BioRead объект содержит секвенирующие считанные данные, включая заголовки последовательностей, нуклеотидные последовательности и счета качества.

Создайте объект BioRead из данных NGS (секвенирование следующего поколения), хранящихся в FASTQ- или SAM-форматированном файле. С каждым элементом объекта связана последовательность, заголовок и счет качества. Используйте свойства и функции объекта, чтобы исследовать, получить доступ, фильтровать и манипулировать всеми данными или подмножеством данных. Если у вас есть данные со чтениями, которые уже сопоставлены со ссылочной последовательностью, и вам нужно получить доступ к записям выравнивания, используйте BioMap вместо этого.

Создание

Описание

пример

bioreadObj = BioRead создает пустой BioRead bioreadObj объекта.

пример

bioreadObj = BioRead(File) создает BioRead объект из File, файл в формате FASTQ- или SAM. Данные остаются в исходном файле после создания объекта, и у вас есть доступ к данным через свойства объекта, но вы не можете изменить свойства, кроме Name свойство.

пример

bioreadObj = BioRead(S) создает BioRead объект из S, MATLAB® структура, содержащая поля Header, Sequence, и Quality. Данные из S остается в памяти, и можно изменять свойства объекта.

пример

bioreadObj = BioRead(Seqs) создает BioRead объект из Seqs, массив ячеек векторов символов или строки вектора, содержащего нуклеотидные последовательности.

пример

bioreadObj = BioRead(Seqs,Quals) создает BioRead объект из Seqs и устанавливает Quality свойство объекта, которое должно быть Qualsмассив ячеек из векторов символов или строкового вектора, содержащий представление ASCII счетов качества по основаниям для каждого чтения.

пример

bioreadObj = BioRead(Seqs,Quals,Headers) также устанавливает Header свойство объекта, которое должно быть Headers, массив ячеек из векторов символов или строкового вектора, содержащий текст заголовка для каждого чтения.

пример

bioreadObj = BioRead(___,Name,Value) задает опции, использующие один или несколько аргументы пары "имя-значение" в дополнение к входным параметрам в предыдущих синтаксисах. Для образца, br = BioRead('SRR005164_1_50.fastq','InMemory',true) задает загрузку данных в память вместо того, чтобы оставлять их в исходном файле.

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

расширить все

Имя файла в формате FASTQ- или SAM, заданное как вектор символов или строка.

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

Примечание

Поскольку данные остаются в исходном файле, не удаляйте исходный файл и вспомогательный файл индекса.

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

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

Информация о последовательности, заданная как структура. S должны содержать поля Header, Sequence, и Quality. Для образца, fastqread и samread функции возвращают такую структуру.

Пример: S

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

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

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

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

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

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

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

Пример: br = BioRead('SRR005164_1_50.fastq','InMemory',true) задает загрузку данных в память вместо того, чтобы оставлять их в исходном файле.

Логический индикатор для хранения данных в памяти, заданный как разделенная разделенными запятой парами, состоящая из 'InMemory' и true или false.

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

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

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

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

Путь к папке файла индекса, где файл индекса существует или создан, заданный как разделенная разделенными запятой парами, состоящая из 'IndexDir' и вектор символов или строка.

Пример: 'IndexDir','C:\data\'

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

Свойства

расширить все

Информация о заголовках чтений, заданная как массив ячеек из векторов символов. Каждый вектор символов представляет текст заголовка для каждого чтения. Существует отношение «один к одному» между количеством и порядком векторов символов (элементов) в Header и Sequence свойства, если только Header - пустой массив ячеек.

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

Имя объекта, заданное как вектор символов или строка.

Пример: 'seqdata'

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

Количество чтений в объекте, заданное как положительное целое число.

Пример: 20000

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

Счета качества в относительных единицах для всех чтений, заданная как массив векторов символов ячеек. Каждый элемент является представлением ASCII относительных счетов качества для каждого чтения. Отношение «один к одному» существует между количеством и порядком элементов в Quality и Sequence, если только Quality - пустой массив ячеек.

Пример: {'<<:<<<','<<<7<:'}

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

Нуклеотидные последовательности (читается), заданные как массив ячеек из векторов символов.

Пример: {'TATCTG','ATCTAC'}

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

Функции объекта

combineОбъедините два объекта
getСвойство Retrieve объекта
getHeaderИзвлечение заголовков последовательности из объекта
getQualityИзвлечение информации о качестве последовательности из объекта
getSequenceИзвлечение последовательностей из объекта
getSubsequenceИзвлечение частичных последовательностей из объекта
getSubsetИзвлечение подмножества элементов из объекта
setУстановите свойство объекта
setHeaderОбновление информации заголовка чтений
setQualityОбновление информации о качестве
setSequenceОбновите последовательности чтения
setSubsequenceОбновление частичных последовательностей
setSubsetОбновляйте элементы объекта
writeЗапись содержимого объекта BioRead или BioMap в файл

Примеры

свернуть все

Создайте объект BioRead из данных чтения секвенирования, сохраненных в FASTQ-форматированном файле.

br = BioRead('SRR005164_1_50.fastq')
br = 
  BioRead with properties:

     Quality: [50x1 File indexed property]
    Sequence: [50x1 File indexed property]
      Header: [50x1 File indexed property]
       NSeqs: 50
        Name: ''


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

fullfile(matlabroot,'toolbox','bioinfo','bioinfodata','SRR005164_1_50.fastq.idx')

Данные остаются в исходном файле, и объект обращается к данным с помощью индекса файла, делая процесс более память эффективным. Но вы не можете редактировать свойства объекта, кроме Name свойство.

Чтобы отредактировать свойства, задайте 'InMemory' на true .

brEdit = BioRead('SRR005164_1_50.fastq','InMemory',true);
brEdit.Header(1) = {'SR1'};
brEdit.Header(1)
ans = 1x1 cell array
    {'SR1'}

Если вы создаете объект из структуры MATLAB или массива ячеек нуклеотидных последовательностей, данные о последовательности всегда сохраняются в памяти по умолчанию, и InMemory опция игнорируется.

Например, сгенерируйте переменный MATLAB, содержащие синтетические последовательности и счета качества.

seqs = {randseq(10);randseq(15);randseq(20)};
quals = {repmat('!',1,10); repmat('%',1,15);repmat('&',1,20)};
headers = {'H1';'H2';'H3'};

Создайте структуру с помощью этих переменных.

structData = struct('Header',headers,'Sequence',seqs,'Quality',quals);

Создайте объект BioRead из структуры.

brStruct = BioRead(structData);

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

brStruct.Header(1) = {'H1.1'};
brStruct.Header(1)
ans = 1x1 cell array
    {'H1.1'}

Введенный в R2010a