featureparse

Функции анализа из данных GenBank, GenPept или EMBL

Синтаксис

FeatStruct = featureparse(Features)
FeatStruct = featureparse(Features, ...'Feature', FeatureValue, ...)
FeatStruct = featureparse(Features, ...'Sequence', SequenceValue, ...)

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

FeaturesЛюбое из следующих:
  • MATLAB® структура с полями, соответствующими GenBank®, GenPept или данные EMBL, такие как возвращенные genbankread, genpeptread, emblread, getgenbank, getgenpept, или getembl

  • Вектор символов или символьный массив, содержащий текст из раздела Features файла GenBank, GenPept или EMBL

FeatureValueИмя функции, содержащегося в Features. Когда задано, featureparse возвращает только подструктуру, которая соответствует этой функции. Если существует несколько функций с одинаковыми FeatureValue, затем FeatStruct - массив структур.
SequenceValueСвойство управлять извлечением, когда это возможно, последовательностей, соответствующих каждой функции, соединяя и дополняя части исходной последовательности и сохраняя их в Sequence поле возвращаемой структуры, FeatStruct. При извлечении последовательности из неполной функции CDS, featureparse использует codon_start для корректировки системы координат последовательности. Варианты true или false (по умолчанию).

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

FeatStructСтруктура output, содержащая поле для каждой функции базы данных. Каждое имя поля в FeatStruct соответствует соответствующему имени функции в базе данных GenBank, GenPept или EMBL, за исключением, перечисленных в таблице ниже. Поля в FeatStruct содержат подструктуры с определителями функций в качестве полей. В базах данных GenBank, GenPept и EMBL для каждой функции единственным обязательным квалификатором является его местоположение, которое featureparse переводится в поле Location. Когда это возможно, featureparse также переводит это расположение в числовые индексы, создавая Indices поле.

Примечание

Если вы используете Indices поле для извлечения информации о последовательности, вам может потребоваться дополнить последовательности.

Описание

FeatStruct = featureparse(Features) анализирует функции из Features, который содержит функции GenBank, GenPept или EMBL. Features может быть:

  • Вектор символов или строка, содержащая функции GenBank, GenPept или EMBL

  • MATLAB символьного массива включая текст, описывающий функции GenBank, GenPept или EMBL

  • Структура MATLAB с полями, соответствующими данным GenBank, GenPept или EMBL, такими как возвращенные genbankread, genpeptread, emblread, getgenbank, getgenpept, или getembl

FeatStruct - структура output, содержащая поле для каждой функции базы данных. Каждое имя поля в FeatStruct соответствует соответствующему имени функции в базе данных GenBank, GenPept или EMBL за следующими исключениями.

Имя функции в базах данных GenBank, GenPept или EMBLИмя поля в структуре MATLAB
-10_signalminus_10_signal
-35_signalminus_35_signal
3'UTRthree_prime_UTR
3'clip three_prime_clip
5'UTR five_prime_UTR
5'clip five_prime_clip
D-loop D_loop

Поля в FeatStruct содержат подструктуры с определителями функций в качестве полей. В базах данных GenBank, GenPept и EMBL для каждой функции единственным обязательным квалификатором является его местоположение, которое featureparse переводится в поле Location. Когда это возможно, featureparse также переводит это расположение в числовые индексы, создавая Indices поле.

Примечание

Если вы используете Indices поле для извлечения информации о последовательности, вам может потребоваться дополнить последовательности.

FeatStruct = featureparse (Features... 'PropertyName', PropertyValue, ...) вызывает featureparse с необязательными свойствами, которые используют пары имя/значение свойства. Можно задать одно или несколько свойств в любом порядке. Каждый PropertyName должны быть заключены в одинарные кавычки и нечувствительны к регистру. Эти имена свойства/пары значения свойств следующие:

FeatStruct = featureparse(Features, ...'Feature', FeatureValue, ...) возвращает только подструктуру, которая соответствует FeatureValue, имя функции, содержащегося в Features. Если существует несколько функций с одинаковыми FeatureValue, затем FeatStruct - массив структур.

FeatStruct = featureparse(Features, ...'Sequence', SequenceValue, ...) управляет извлечением, когда это возможно, последовательностей, соответствующих каждой функции, соединяя и дополняя части исходной последовательности и сохраняя их в поле Sequence. При извлечении последовательности из неполной функции CDS, featureparse использует codon_start для корректировки системы координат последовательности. Варианты true или false (по умолчанию).

Примеры

Пример 11. Получение всех функций из файла GenBank

В следующем примере получаются все функции, хранящиеся в файле GenBank nm175642.txt:

gbkStruct = genbankread('nm175642.txt');
features = featureparse(gbkStruct)

features = 

    source: [1x1 struct]
      gene: [1x1 struct]
       CDS: [1x1 struct]

Пример 12. Получение подмножества функций из записи GenBank

В следующем примере из базы данных GenBank получают только функции кодирующих последовательностей (CDS) космидной записи Caenorhabditis elegans (номер присоединения Z92777):

worm = getgenbank('Z92777');
CDS = featureparse(worm,'feature','cds')

CDS = 

1x12 struct array with fields:
    Location
    Indices
    locus_tag
    standard_name
    note
    codon_start
    product
    protein_id
    db_xref
    translation

Пример 13. Извлечение последовательностей для каждой функции
  1. Извлеките две нуклеотидные последовательности из базы данных GenBank для белка нейраминидазы (NA) двух штаммов вируса гриппа A (H5N1).

     hk01 = getgenbank('AF509094');
     vt04 = getgenbank('DQ094287');
    
  2. Экстрагируют последовательность кодирующей области для белка нейраминидазы (NA) из двух нуклеотидных последовательностей. Последовательности областей кодирования сохраняются в Sequence поля возвращенных структур, hk01_cds и vt04_cds.

    hk01_cds = featureparse(hk01,'feature','CDS','Sequence',true);
    vt04_cds = featureparse(vt04,'feature','CDS','Sequence',true);
    
  3. После извлечения нуклеотидных последовательностей можно использовать nt2aa и nwalign функции для выравнивания аминокислотных последовательностей, преобразованных из нуклеотидных последовательностей.

     [sc,al]=nwalign(nt2aa(hk01_cds),nt2aa(vt04_cds),'extendgap',1);
    
  4. Тогда можно использовать seqinsertgaps функция для копирования промежутков из выровненных аминокислотных последовательностей в соответствующие им нуклеотидные последовательности, таким образом кодон-выравнивая их.

     hk01_aligned = seqinsertgaps(hk01_cds,al(1,:))
     vt04_aligned = seqinsertgaps(vt04_cds,al(3,:))
    
  5. Если вы выровняли код две последовательности, можно использовать их как вход в другие функции, такие как dnds, который вычисляет скорости синонимических и несинонимических замен кодоналегированных нуклеотидных последовательностей. Путем настройки Verbose на trueможно также отобразить кодоны, рассматриваемые в расчетах и их аминокислотных переводах.

    [dn,ds] = dnds(hk01_aligned,vt04_aligned,'verbose',true)
    
Введенный в R2006b
Для просмотра документации необходимо авторизоваться на сайте