exponenta event banner

BioRead

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

Описание

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, заданного как символьный вектор или строка.

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Получить свойство объекта
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