Работа с объектами для данных об эксперименте микромассивов

Этот пример показывает, как создать и управлять контейнерами MATLAB®, разработанными для того, чтобы хранить данные из эксперимента микромассивов.

Контейнеры для данных об эксперименте экспрессии гена

Экспериментальные данные микромассивов являются очень комплексными, обычно состоящий из данных и информации из многих других источников. Хранение и управление наборы больших и комплексных данных когерентным способом является проблемой. Bioinformatics Toolbox™ обеспечивает набор объектов представлять различные части данных из эксперимента микромассивов.

Класс ExpressionSet является одной, удобной структурой данных для различных типов хранения и управления данных из эксперимента экспрессии гена микромассивов.

Объект ExpressionSet состоит из этих четырех компонентов, которые характерны для всех экспериментов экспрессии гена микромассивов:

Данные об эксперименте: значения Выражения из экспериментов микромассивов. Эти данные хранятся как экземпляр класса ExptData.

Демонстрационная информация: метаданные, описывающие выборки в эксперименте. Демонстрационные метаданные хранятся как экземпляр класса MetaData.

Аннотации функции массива: аннотации о функциях или зондах на массиве используются в эксперименте. Аннотации могут храниться как экземпляр класса MetaData.

Описания эксперимента: информация, чтобы описать методы эксперимента и условия. Информация может храниться как экземпляр класса MIAME.

Класс ExpressionSet координирует и валидирует эти компоненты данных. Класс предоставляет методы для получения и установки данных, хранимых в объекте ExpressionSet. Объект ExpressionSet также ведет себя как много других структур данных MATLAB, которые могут быть из подмножества и скопированы.

Данные об эксперименте

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

Создайте Datamatrix с именами строки и столбца.

dm = bioma.data.DataMatrix(rand(5,4), 'RowNames','Feature', 'ColNames', 'Sample')
dm = 

                Sample1    Sample2    Sample3    Sample4
    Feature1    0.81472    0.09754    0.15761    0.14189
    Feature2    0.90579     0.2785    0.97059    0.42176
    Feature3    0.12699    0.54688    0.95717    0.91574
    Feature4    0.91338    0.95751    0.48538    0.79221
    Feature5    0.63236    0.96489    0.80028    0.95949

Функциональный size возвращает количество строк и столбцов в объекте DataMatrix.

size(dm)
ans =

     5     4

Можно индексировать в объект DataMatrix как другие числовые массивы MATLAB при помощи чисел строки и столбца. Например, можно получить доступ к элементам в строках 1 и 2, столбце 3.

dm(1:2, 3)
ans = 

                Sample3
    Feature1    0.15761
    Feature2    0.97059

Можно также индексировать в объект DataMatrix при помощи его имен строки и столбца. Повторно присвойте элементы в строке 2 и 3, столбце 1 и 4 к различным значениям.

dm({'Feature2', 'Feature3'}, {'Sample1', 'Sample4'}) = [2, 3; 4, 5]
dm = 

                Sample1    Sample2    Sample3    Sample4
    Feature1    0.81472    0.09754    0.15761    0.14189
    Feature2          2     0.2785    0.97059          3
    Feature3          4    0.54688    0.95717          5
    Feature4    0.91338    0.95751    0.48538    0.79221
    Feature5    0.63236    0.96489    0.80028    0.95949

Данные об экспрессии гена, используемые в этом примере, являются маленьким набором данных из эксперимента микромассивов профильные взрослые шаблоны экспрессии гена мыши в общих деформациях на массиве Affymetrix® MG-U74Av2 [1].

Считайте значения выражения из отформатированного вкладкой файла mouseExprsData.txt в рабочее пространство MATLAB как объект DataMatrix.

exprsData = bioma.data.DataMatrix('file', 'mouseExprsData.txt');
class(exprsData)
ans =

    'bioma.data.DataMatrix'

Получите свойства объекта DataMatrix, exprsData.

get(exprsData)
            Name: 'mouseExprsData'
        RowNames: {500x1 cell}
        ColNames: {1x26 cell}
           NRows: 500
           NCols: 26
           NDims: 2
    ElementClass: 'double'

Проверяйте демонстрационные имена.

colnames(exprsData)
ans =

  1x26 cell array

  Columns 1 through 8

    {'A'}    {'B'}    {'C'}    {'D'}    {'E'}    {'F'}    {'G'}    {'H'}

  Columns 9 through 16

    {'I'}    {'J'}    {'K'}    {'L'}    {'M'}    {'N'}    {'O'}    {'P'}

  Columns 17 through 24

    {'Q'}    {'R'}    {'S'}    {'T'}    {'U'}    {'V'}    {'W'}    {'X'}

  Columns 25 through 26

    {'Y'}    {'Z'}

Просмотрите первые 10 строк и 5 столбцов.

exprsData(1:10, 1:5)
ans = 

                   A         B         C         D         E     
    100001_at        2.26     20.14     31.66     14.58     16.04
    100002_at      158.86    236.25    206.27    388.71    388.09
    100003_at       68.11    105.45     82.92      82.9     60.38
    100004_at       74.32     96.68     84.87     72.26     98.38
    100005_at       75.05     53.17     57.94     60.06     63.91
    100006_at       80.36     42.89     77.21     77.24     40.31
    100007_at      216.64    191.32    219.48    237.28    298.18
    100009_r_at    3806.7      1425    2468.5    2172.7    2237.2
    100010_at         NaN       NaN       NaN      7.18     22.37
    100011_at       81.72     72.27    127.61     91.01     98.13

Выполните log2 преобразование значений выражения.

exprsData_log2 = log2(exprsData);
exprsData_log2(1:10, 1:5)
ans = 

                   A         B         C         D         E     
    100001_at      1.1763     4.332    4.9846    3.8659    4.0036
    100002_at      7.3116    7.8842    7.6884    8.6026    8.6002
    100003_at      6.0898    6.7204    6.3736    6.3733     5.916
    100004_at      6.2157    6.5951    6.4072    6.1751    6.6203
    100005_at      6.2298    5.7325    5.8565    5.9083     5.998
    100006_at      6.3284    5.4226    6.2707    6.2713    5.3331
    100007_at      7.7592    7.5798    7.7779    7.8904      8.22
    100009_r_at    11.894    10.477    11.269    11.085    11.127
    100010_at         NaN       NaN       NaN     2.844    4.4835
    100011_at      6.3526    6.1753    6.9956     6.508    6.6166

Измените свойство Name быть более описательные |.

exprsData_log2 = set(exprsData_log2, 'Name', 'Log2 Based mouseExprsData');
get(exprsData_log2)
            Name: 'Log2 Based mouseExprsData'
        RowNames: {500x1 cell}
        ColNames: {1x26 cell}
           NRows: 500
           NCols: 26
           NDims: 2
    ElementClass: 'double'

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

Храните данные об экспрессии гена натурального звукоряда и базовых значений выражения log2 отдельно в объекте ExptData.

mouseExptData = bioma.data.ExptData(exprsData, exprsData_log2,...
                    'ElementNames', {'naturalExprs', 'log2Exprs'})
mouseExptData = 

Experiment Data:
  500 features,  26 samples
  2 elements
  Element names: naturalExprs, log2Exprs

Доступ к элементу DataMatrix в mouseExptData с помощью имени элемента.

exprsData2 = mouseExptData('log2Exprs');
get(exprsData2)
            Name: 'Log2 Based mouseExprsData'
        RowNames: {500x1 cell}
        ColNames: {1x26 cell}
           NRows: 500
           NCols: 26
           NDims: 2
    ElementClass: 'double'

Демонстрационные метаданные

Метаданные о выборках в эксперименте микромассивов могут быть представлены как таблица со строками S и V столбцов, где S является количеством выборок, и V количество переменных. Содержимое таблицы является значениями каждой переменной для каждой выборки. Например, файл mouseSampleData.txt содержит такую таблицу. Описание каждой демонстрационной переменной отмечено # символом.

Класс MetaData разработан для того, чтобы сохранить и управлять значениями переменных и их метаданными скоординированным способом. Можно считать файл mouseSampleData.txt в MATLAB как объект MetaData.

sData = bioma.data.MetaData('file', 'mouseSampleData.txt', 'vardescchar', '#')
sData = 

Sample Names:
    A, B, ...,Z (26 total)
Variable Names and Meta Information:
              VariableDescription                         
    Gender    ' Gender of the mouse in study'             
    Age       ' The number of weeks since mouse birth'    
    Type      ' Genetic characters'                       
    Strain    ' The mouse strain'                         
    Source    ' The tissue source for RNA collection'     

Свойства класса MetaData предоставляют информацию о выборках и переменных.

numSamples = sData.NSamples
numVariables = sData.NVariables
numSamples =

    26


numVariables =

     5

Значения переменных и описания переменной для выборок хранятся как два массива dataset в классе MetaData. Класс MetaData предоставляет методы доступа значениям переменных и метаинформации, описывающей переменные.

Доступ к демонстрационным метаданным с помощью метода variableValues.

sData.variableValues
ans = 

         Gender        Age    Type               Strain             
    A    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    B    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    C    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    D    'Male'        8      'Wild type'        'A/J '             
    E    'Male'        8      'Wild type'        'A/J '             
    F    'Male'        8      'Wild type'        'C57BL/6J '        
    G    'Male'        8      'Wild type'        'C57BL/6J'         
    H    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    I    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    J    'Male'        8      'Wild type'        'A/J'              
    K    'Male'        8      'Wild type'        'A/J'              
    L    'Male'        8      'Wild type'        'A/J'              
    M    'Male'        8      'Wild type'        'C57BL/6J'         
    N    'Male'        8      'Wild type'        'C57BL/6J'         
    O    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    P    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    Q    'Male'        8      'Wild type'        'A/J'              
    R    'Male'        8      'Wild type'        'A/J'              
    S    'Male'        8      'Wild type'        'C57BL/6J'         
    T    'Male'        8      'Wild type'        'C57BL/6J4'        
    U    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    V    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    W    'Male'        8      'Wild type'        'A/J'              
    X    'Male'        8      'Wild type'        'A/J'              
    Y    'Male'        8      'Wild type'        'C57BL/6J'         
    Z    'Male'        8      'Wild type'        'C57BL/6J'         


         Source                
    A    'amygdala'            
    B    'amygdala'            
    C    'amygdala'            
    D    'amygdala'            
    E    'amygdala'            
    F    'amygdala'            
    G    'amygdala'            
    H    'cingulate cortex'    
    I    'cingulate cortex'    
    J    'cingulate cortex'    
    K    'cingulate cortex'    
    L    'cingulate cortex'    
    M    'cingulate cortex'    
    N    'cingulate cortex'    
    O    'hippocampus'         
    P    'hippocampus'         
    Q    'hippocampus'         
    R    'hippocampus'         
    S    'hippocampus'         
    T    'hippocampus'         
    U    'hypothalamus'        
    V    'hypothalamus'        
    W    'hypothalamus'        
    X    'hypothalamus'        
    Y    'hypothalamus'        
    Z    'hypothalamus'        

Просмотрите сводные данные демонстрационных метаданных.

summary(sData.variableValues)
Gender: [26x1 cell array of character vectors]

Age: [26x1 double]

    min    1st quartile    median    3rd quartile    max
    8      8               8         8               8  

Type: [26x1 cell array of character vectors]

Strain: [26x1 cell array of character vectors]

Source: [26x1 cell array of character vectors]

sampleNames и методы variableNames являются удобными способами получить доступ к именам выборок и переменных. Получите имена переменных объекта sData.

variableNames(sData)
ans =

  1x5 cell array

    {'Gender'}    {'Age'}    {'Type'}    {'Strain'}    {'Source'}

Можно получить метаинформацию о переменных, описывающих выборки с помощью метода variableDesc. В этом примере это содержит только описания о переменных.

variableDesc(sData)
ans = 

              VariableDescription                         
    Gender    ' Gender of the mouse in study'             
    Age       ' The number of weeks since mouse birth'    
    Type      ' Genetic characters'                       
    Strain    ' The mouse strain'                         
    Source    ' The tissue source for RNA collection'     

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

sData(3:6, :)
ans = 

Sample Names:
    C, D, ...,F (4 total)
Variable Names and Meta Information:
              VariableDescription                         
    Gender    ' Gender of the mouse in study'             
    Age       ' The number of weeks since mouse birth'    
    Type      ' Genetic characters'                       
    Strain    ' The mouse strain'                         
    Source    ' The tissue source for RNA collection'     

Можно отобразить деформацию мыши определенных выборок при помощи числовой индексации.

sData.Strain([2 14])
ans =

  2x1 cell array

    {'129S6/SvEvTac'}
    {'C57BL/6J'     }

Обратите внимание на то, что имена строки в sData и имена столбцов в exprsData являются тем же самым. Это - важное отношение между данными о выражении и выборочными данными в том же эксперименте.

all(ismember(sampleNames(sData), colnames(exprsData)))
ans =

  logical

   1

Покажите метаданные аннотации

Метаданные о функциях или тестовом наборе на массиве могут быть очень большими и разнообразными. Производители чипа обычно обеспечивают определенный файл аннотации для функций каждого типа массива. Метаданные могут храниться как объект MetaData для определенного эксперимента. В этом примере файл аннотации для массива MG-U74Av2 может быть загружен с веб-сайта Affymetrix. Необходимо будет преобразовать файл от CSV до формата XLSX с помощью программного обеспечения электронной таблицы.

Считайте целый файл в MATLAB как массив dataset. Также можно использовать опцию Range в конструкторе dataset. Любые пробелы в именах переменных удалены, чтобы сделать их допустимыми именами переменной MATLAB. Предупреждение выведено каждый раз, когда это происходит.

mgU74Av2 =  table2dataset(readtable('MG_U74Av2_annot.xlsx'));
Warning: Table variable names were modified to make them valid MATLAB
identifiers. The original names are saved in the VariableDescriptions property. 

Осмотрите свойства этого массива dataset.

get(mgU74Av2)
       Description: ''
    VarDescription: {1x43 cell}
             Units: {}
          DimNames: {'Row'  'Variables'}
          UserData: []
          ObsNames: {}
          VarNames: {1x43 cell}

Определите количество тестовых идентификаторов набора в файле аннотации.

numel(mgU74Av2.ProbeSetID)
ans =

       12488

Получите имена переменных, описывающих функции на массиве, и просмотрите первые 20 имен переменных.

fDataVariables = get(mgU74Av2, 'VarNames');
fDataVariables(1:20)'
ans =

  20x1 cell array

    {'ProbeSetID'               }
    {'GeneChipArray'            }
    {'SpeciesScientificName'    }
    {'AnnotationDate'           }
    {'SequenceType'             }
    {'SequenceSource'           }
    {'TranscriptID_ArrayDesign_'}
    {'TargetDescription'        }
    {'RepresentativePublicID'   }
    {'ArchivalUniGeneCluster'   }
    {'UniGeneID'                }
    {'GenomeVersion'            }
    {'Alignments'               }
    {'GeneTitle'                }
    {'GeneSymbol'               }
    {'ChromosomalLocation'      }
    {'UnigeneClusterType'       }
    {'Ensembl'                  }
    {'EntrezGene'               }
    {'SwissProt'                }

Установите свойство ObsNames на тестовые идентификаторы набора, так, чтобы можно было получить доступ к отдельным генным аннотациям путем индексации с тестовыми идентификаторами набора.

mgU74Av2 = set(mgU74Av2,'ObsNames',mgU74Av2.ProbeSetID);
mgU74Av2('100709_at',{'GeneSymbol','ChromosomalLocation'})
ans = 

                 GeneSymbol     ChromosomalLocation      
    100709_at    'Tpbpa'        'chr13 B2|13 36.0 cM'    

В некоторых случаях полезно извлечь определенные аннотации, которые относятся к анализу. Извлеките аннотации для GeneTitle, GeneSymbol, ChromosomalLocation и Pathway относительно функций в exprsData.

mgU74Av2 = mgU74Av2(:,{'GeneTitle',...
                       'GeneSymbol',...
                       'ChromosomalLocation',...
                       'Pathway'});

mgU74Av2 = mgU74Av2(rownames(exprsData),:);
get(mgU74Av2)
       Description: ''
    VarDescription: {1x4 cell}
             Units: {}
          DimNames: {'Row'  'Variables'}
          UserData: []
          ObsNames: {500x1 cell}
          VarNames: {1x4 cell}

Можно сохранить аннотацию функции массив dataset как экземпляр класса MetaData.

fData = bioma.data.MetaData(mgU74Av2)
fData = 

Sample Names:
    100001_at, 100002_at, ...,100717_at (500 total)
Variable Names and Meta Information:
                           VariableDescription
    GeneTitle              'NA'               
    GeneSymbol             'NA'               
    ChromosomalLocation    'NA'               
    Pathway                'NA'               

Заметьте, что нет никаких описаний для переменных функции в объекте fData MetaData. Можно добавить описания о переменных в fData с помощью метода variableDesc.

fData = variableDesc(fData, {'Gene title of a probe set',...
                             'Probe set gene symbol',...
                             'Probe set chromosomal locations',...
                             'The pathway the genes involved in'})
fData = 

Sample Names:
    100001_at, 100002_at, ...,100717_at (500 total)
Variable Names and Meta Information:
                           VariableDescription                    
    GeneTitle              'Gene title of a probe set'            
    GeneSymbol             'Probe set gene symbol'                
    ChromosomalLocation    'Probe set chromosomal locations'      
    Pathway                'The pathway the genes involved in'    

Информация об эксперименте

Класс MIAME является гибким контейнером данных, разработанным для набора основных описаний об эксперименте микромассивов, таких как следователи, лаборатории и проекты массивов. Класс MIAME свободно следует за Минимальной информацией Об Эксперименте Микромассивов (MIAME) спецификация [2].

Создайте объект MIAME путем предоставления некоторой основной информации.

expDesc = bioma.data.MIAME('investigator', 'Jane OneName',...
                           'lab',          'Bioinformatics Laboratory',...
                           'title',        'Example Gene Expression Experiment',...
                           'abstract',     'An example of using microarray objects.',...
                           'other',        {'Notes: Created from a text files.'})
expDesc = 

Experiment Description:
  Author name: Jane OneName
  Laboratory: Bioinformatics Laboratory
  Contact information: 
  URL: 
  PubMedIDs: 
  Abstract: A 5 word abstract is available. Use the Abstract property.
  No experiment design summary available.
  Other notes: 
    'Notes: Created from a text files.'

Другой способ создать объект MIAME от данных о серии GEO. Класс MIAME заполнит соответствующие свойства от структуры серии GEO. Информация, сопоставленная с генным экспериментом профиля в этом примере, доступна от базы данных GEO под инвентарным номером GSE3327 [1]. Получите ГЕО Серийные данные с помощью функции getgeodata.

getgeodata('GSE3327', 'ToFile', 'GSE3327.txt');

Считайте данные в структуру.

geoSeries = geoseriesread('GSE3327.txt')
geoSeries = 

  struct with fields:

    Header: [1x1 struct]
      Data: [12488x87 bioma.data.DataMatrix]

Создайте объект MIAME.

exptGSE3327 = bioma.data.MIAME(geoSeries)
exptGSE3327 = 

Experiment Description:
  Author name: Iiris,,Hovatta
David,J,Lockhart
Carrolee,,Barlow
  Laboratory: The Salk Institute for Biological Studies
  Contact information: Carrolee,,Barlow
  URL: 
  PubMedIDs: 16244648
  Abstract: A 14 word abstract is available. Use the Abstract property.
  Experiment Design: A 8 word summary is available. Use the ExptDesign property.
  Other notes: 
    'ftp://ftp.ncbi.nlm.nih.gov/pub/geo/DATA/supplementary/series/GSE3327/GSE3327_RAW.tar'

Просмотрите краткий обзор эксперимента и его идентификаторов PubMed.

abstract = exptGSE3327.Abstract
pubmedID = exptGSE3327.PubMedID
abstract =

    'Adult mouse gene expression patterns in common strains
     Keywords: mouse strain and brain region comparison'


pubmedID =

    '16244648'

Создание объекта ExpressionSet

Класс ExpressionSet специально разработан для данных об эксперименте экспрессии гена микромассивов. Соберите объект ExpressionSet для эксперимента экспрессии гена мыши в качестве примера от различных объектов данных, которые вы только создали.

exptSet = bioma.ExpressionSet(exprsData, 'SData', sData,...
                                         'FData', fData,...
                                         'Einfo', exptGSE3327)
exptSet = 

ExpressionSet
Experiment Data: 500 features, 26 samples
  Element names: Expressions
Sample Data:
    Sample names:     A, B, ...,Z (26 total)
    Sample variable names and meta information: 
        Gender:  Gender of the mouse in study
        Age:  The number of weeks since mouse birth
        Type:  Genetic characters
        Strain:  The mouse strain
        Source:  The tissue source for RNA collection
Feature Data:
    Feature names:     100001_at, 100002_at, ...,100717_at (500 total)
    Feature variable names and meta information: 
        GeneTitle: Gene title of a probe set
        GeneSymbol: Probe set gene symbol
        ChromosomalLocation: Probe set chromosomal locations
        Pathway: The pathway the genes involved in
Experiment Information: use 'exptInfo(obj)'

Можно также создать объект ExpressionSet только со значениями выражения в DataMatrix или числовой матрице.

miniExprSet = bioma.ExpressionSet(exprsData)
miniExprSet = 

ExpressionSet
Experiment Data: 500 features, 26 samples
  Element names: Expressions
Sample Data: none
Feature Data: none
Experiment Information: none

Сохранение и загрузка объекта ExpressionSet

Объекты данных для эксперимента микромассивов могут быть сохранены как файлы MAT. Сохраните объект ExpressionSet exptSet в файл с именем MAT mouseExpressionSet.mat.

save mouseExpressionSet exptSet

Очистите переменные из рабочего пространства MATLAB.

clear dm exprs* mouseExptData ME sData

Загрузите файл MAT mouseExpressionSet в рабочее пространство MATLAB.

load mouseExpressionSet

Осмотрите загруженный объект ExpressionSet.

exptSet.elementNames
ans =

  1x1 cell array

    {'Expressions'}

exptSet.NSamples
ans =

    26

exptSet.NFeatures
ans =

   500

Доступ к компонентам данных объекта ExpressionSet

Много методов доступны, чтобы получить доступ и обновить данные, хранимые в объекте ExpressionSet.

Можно получить доступ к столбцам выборочных данных с помощью записи через точку.

exptSet.Strain(1:5)
ans =

  5x1 cell array

    {'129S6/SvEvTac'}
    {'129S6/SvEvTac'}
    {'129S6/SvEvTac'}
    {'A/J '         }
    {'A/J '         }

Получите имена функции с помощью метода featureNames. В этом примере имена функции являются тестовыми идентификаторами набора на массиве.

featureNames(exptSet, 1:5)
ans =

  5x1 cell array

    {'100001_at'}
    {'100002_at'}
    {'100003_at'}
    {'100004_at'}
    {'100005_at'}

К уникальному идентификатору выборок можно получить доступ с помощью метода sampleNames.

exptSet.sampleNames(1:5)
ans =

  1x5 cell array

    {'A'}    {'B'}    {'C'}    {'D'}    {'E'}

Списки методов sampleVarNames имена переменных в выборочных данных.

exptSet.sampleVarNames
ans =

  1x5 cell array

    {'Gender'}    {'Age'}    {'Type'}    {'Strain'}    {'Source'}

Извлеките массив dataset, содержащий демонстрационную информацию.

sDataset = sampleVarValues(exptSet)
sDataset = 

         Gender        Age    Type               Strain             
    A    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    B    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    C    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    D    'Male'        8      'Wild type'        'A/J '             
    E    'Male'        8      'Wild type'        'A/J '             
    F    'Male'        8      'Wild type'        'C57BL/6J '        
    G    'Male'        8      'Wild type'        'C57BL/6J'         
    H    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    I    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    J    'Male'        8      'Wild type'        'A/J'              
    K    'Male'        8      'Wild type'        'A/J'              
    L    'Male'        8      'Wild type'        'A/J'              
    M    'Male'        8      'Wild type'        'C57BL/6J'         
    N    'Male'        8      'Wild type'        'C57BL/6J'         
    O    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    P    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    Q    'Male'        8      'Wild type'        'A/J'              
    R    'Male'        8      'Wild type'        'A/J'              
    S    'Male'        8      'Wild type'        'C57BL/6J'         
    T    'Male'        8      'Wild type'        'C57BL/6J4'        
    U    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    V    'Male'        8      'Wild type'        '129S6/SvEvTac'    
    W    'Male'        8      'Wild type'        'A/J'              
    X    'Male'        8      'Wild type'        'A/J'              
    Y    'Male'        8      'Wild type'        'C57BL/6J'         
    Z    'Male'        8      'Wild type'        'C57BL/6J'         


         Source                
    A    'amygdala'            
    B    'amygdala'            
    C    'amygdala'            
    D    'amygdala'            
    E    'amygdala'            
    F    'amygdala'            
    G    'amygdala'            
    H    'cingulate cortex'    
    I    'cingulate cortex'    
    J    'cingulate cortex'    
    K    'cingulate cortex'    
    L    'cingulate cortex'    
    M    'cingulate cortex'    
    N    'cingulate cortex'    
    O    'hippocampus'         
    P    'hippocampus'         
    Q    'hippocampus'         
    R    'hippocampus'         
    S    'hippocampus'         
    T    'hippocampus'         
    U    'hypothalamus'        
    V    'hypothalamus'        
    W    'hypothalamus'        
    X    'hypothalamus'        
    Y    'hypothalamus'        
    Z    'hypothalamus'        

Получите объект ExptData, содержащий значения выражения. Может быть больше чем один объект DataMatrix с идентичными размерностями в объекте ExptData. В объекте ExpressionSet всегда существует объект DataMatrix элемента под названием Expressions, содержащий матрицу выражения.

exptDS = exptData(exptSet)
exptDS = 

Experiment Data:
  500 features,  26 samples
  1 elements
  Element names: Expressions

Извлеките только выражение экземпляр DataMatrix.

dMatrix = expressions(exptSet);

Возвращенный DataMatrix выражения должен быть идентичен объекту exprsData DataMatrix, который вы создали ранее.

get(dMatrix)
            Name: 'mouseExprsData'
        RowNames: {500x1 cell}
        ColNames: {1x26 cell}
           NRows: 500
           NCols: 26
           NDims: 2
    ElementClass: 'double'

Получите идентификаторы PubMed для эксперимента, сохраненного в exptSet.

exptSet.pubMedID
ans =

    '16244648'

Подмножество объект ExpressionSet

Вы можете подмножество объект ExpressionSet так, чтобы можно было фокусироваться на выборках и функциях интереса. Первые подмножества аргумента индексации функции и вторые подмножества аргумента выборки.

Создайте новый объект ExpressionSet, состоящий из первых пяти функций и выборок под названием A, B и C.

mySet = exptSet(1:5, {'A', 'B', 'C'})
mySet = 

ExpressionSet
Experiment Data: 5 features, 3 samples
  Element names: Expressions
Sample Data:
    Sample names:     A, B, C
    Sample variable names and meta information: 
        Gender:  Gender of the mouse in study
        Age:  The number of weeks since mouse birth
        Type:  Genetic characters
        Strain:  The mouse strain
        Source:  The tissue source for RNA collection
Feature Data:
    Feature names:     100001_at, 100002_at, ...,100005_at (5 total)
    Feature variable names and meta information: 
        GeneTitle: Gene title of a probe set
        GeneSymbol: Probe set gene symbol
        ChromosomalLocation: Probe set chromosomal locations
        Pathway: The pathway the genes involved in
Experiment Information: use 'exptInfo(obj)'
size(mySet)
ans =

     5     3

featureNames(mySet)
ans =

  5x1 cell array

    {'100001_at'}
    {'100002_at'}
    {'100003_at'}
    {'100004_at'}
    {'100005_at'}

sampleNames(mySet)
ans =

  1x3 cell array

    {'A'}    {'B'}    {'C'}

Можно также создать подмножество, состоящее только из выборок от тканей гиппокампа.

hippocampusSet = exptSet(:, nominal(exptSet.Source)== 'hippocampus')
hippocampusSet = 

ExpressionSet
Experiment Data: 500 features, 6 samples
  Element names: Expressions
Sample Data:
    Sample names:     O, P, ...,T (6 total)
    Sample variable names and meta information: 
        Gender:  Gender of the mouse in study
        Age:  The number of weeks since mouse birth
        Type:  Genetic characters
        Strain:  The mouse strain
        Source:  The tissue source for RNA collection
Feature Data:
    Feature names:     100001_at, 100002_at, ...,100717_at (500 total)
    Feature variable names and meta information: 
        GeneTitle: Gene title of a probe set
        GeneSymbol: Probe set gene symbol
        ChromosomalLocation: Probe set chromosomal locations
        Pathway: The pathway the genes involved in
Experiment Information: use 'exptInfo(obj)'
hippocampusSet.Source
ans =

  6x1 cell array

    {'hippocampus'}
    {'hippocampus'}
    {'hippocampus'}
    {'hippocampus'}
    {'hippocampus'}
    {'hippocampus'}

hippocampusExprs = expressions(hippocampusSet);
get(hippocampusExprs)
            Name: 'mouseExprsData'
        RowNames: {500x1 cell}
        ColNames: {'O'  'P'  'Q'  'R'  'S'  'T'}
           NRows: 500
           NCols: 6
           NDims: 2
    ElementClass: 'double'

Ссылки

[1] Hovatta, я., и др., "Glyoxalase 1 и редуктаза глутатиона 1 регулируют беспокойство в мышах", Природа, 438 (7068):662-6, 2005.

[2] Brazma, A., и др., "Минимальная информация об эксперименте микромассивов (MIAME) - к стандартам для микроданных массива", Нэт. Генетта. 29 (4):365-371, 2001.