clustergram

Объект, содержащий данные анализа иерархической кластеризации

Описание

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

Создание

Описание

пример

cgObj = clustergram(data) выполняет иерархический кластеризационный анализ значений в data. Возвращенный объект clustergram cgObj содержит данные анализа и отображает дендрограмму и тепловую карту.

пример

cgObj = clustergram(data,Name,Value) устанавливает свойства объекта с помощью пар "имя-значение". Для примера, clustergram(data,'Standardize','column') стандартизирует значения вдоль столбцов данных. Можно задать несколько пары "имя-значение". Заключайте каждое имя свойства в кавычки.

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

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

Исходные данные, заданные как объект DataMatrix или числовая матрица. Обычно, если матрица содержит данные экспрессии генов, каждая строка соответствует гену, и каждый столбец соответствует выборке.

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

Используйте разделенные запятыми аргументы пары "имя-значение", чтобы задать свойства объекта. Заключайте каждое имя свойства в одинарные кавычки.

Пример: cg = clustergram(data,'Colormap',redbluecmap,'Annotate',true)

Свойства

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

Размерность для стандартизации значений данных, заданная как вектор символов, строка или положительное целое число. Варианты:

  • 'column' или 1 - стандартизация по столбцам данных.

  • 'row' или 2 - стандартизация по строкам данных.

  • 'none' или 3 - Не стандартизируйте.

Если вы задаете 'column' или 'row'функция преобразует стандартизированные значения так, чтобы среднее значение составляло 0, а стандартное отклонение составляло 1 в заданном измерении.

Пример: 'column'

Типы данных: double | char | string

Флаг для симметрии шкалы цвета тепловой карты вокруг нуля, заданный как true или false.

Пример: false

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

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

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

Пример: 'func1'

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

цвета тепловой карты, заданные как трехколоночная (M -by-3) матрица красно-зелено-синих (RGB) значений или имя указателя на функцию, который возвращает палитру, например redgreencmap или redbluecmap.

Палитра по умолчанию redgreencmap, в котором красный цвет представляет значения выше среднего, черный цвет представляет среднее, а зеленый цвет представляет значения ниже среднего значения строки (гена) во всех столбцах ( выборках).

Пример: redbluecmap

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

Метки столбцов, заданные как строковый вектор, массив ячеек из векторов символов или числовой вектор. Размер вектора должен совпадать с количеством столбцов в вход data.

Если количество меток столбцов составляет 200 или более, метки не отображаются на графике кластерграммы.

Пример: ["sample1","sample2","sample3"]

Типы данных: double | string | cell

Метки строк, заданные как строковый вектор, массив ячеек из векторов символов или числовой вектор. Размер вектора должен совпадать с количеством строк в вход data.

Если количество меток строк составляет 200 или более, метки не отображаются на графике кластерграммы.

Пример: ["gene1","gene2","gene3"]

Типы данных: double | string | cell

Ориентация меток столбцов, заданная как числовой скаляр. Задайте значение поворота в степенях (положительные углы вызывают вращение против часовой стрелки).

Пример: 30

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

Ориентация меток строк, заданная как числовой скаляр. Задайте значение поворота в степенях (положительные углы вызывают вращение против часовой стрелки).

Пример: 30

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

Флаг для отображения значений данных в тепловой карте, заданный как true или false.

Пример: true

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

Отображение точности значений данных в тепловой карте в виде числового скаляра. Количество цифр точности по умолчанию 2.

Пример: 3

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

Флаг для отображения цветных маркеров вместо цветного текста для меток строк и столбцов, заданный как true или false.

Пример: true

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

Текстовый цвет отображаемых значений данных в тепловой карте, заданный как вектор символов, строка или трехэлементный числовой вектор. Для примера, чтобы использовать голубой, можно ввести [0 1 1], 'c', "c", "cyan", или 'cyan'. Для получения дополнительной информации смотрите Опции цвета.

Пример: 'red'

Типы данных: char | string | double

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

Значение по умолчанию 3означает, что существует изменение цвета для значений между -3 и 3, но значения больше 3 являются тем же цветом, что и 3, и значения меньше -3 являются тем же цветом, что и -3.

Для примера, если вы задаете redgreencmap для 'Colormap' свойство, чистый красный цвет представляет значения, большие или равные заданному значению области значений отображения, а чистый зеленый цвет представляет значения, меньшие или равные отрицательному значению заданной области значений отображения.

Пример: 3

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

Предупреждение

Это свойство будет удалено в следующем релизе. Задайте LabelsWithMarkers на true для цветных маркеров вместо цветных текстов.

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

Для одной структуры необходимо задать следующие поля.

  • Labels - Массив ячеек из символьных векторов, задающий метки столбцов, перечисленные в ColumnLabels свойство.

  • Colors - Символьный вектор или строка, задающая цвет для меток столбцов. Если это поле пустое, используется цвет по умолчанию (черный).

Для массива структур необходимо задать один элемент в каждом поле для каждой структуры.

  • Labels - Вектор символов или строка, задающая метку столбца, указанную в ColumnLabels свойство.

  • Colors - Символьный вектор или строка, задающая цвет для меток столбцов. Если это поле пустое, используется цвет по умолчанию (черный).

Дополнительные сведения об указании цветов см. в разделе «Опции цвета».

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

Предупреждение

Это свойство будет удалено в следующем релизе. Задайте LabelsWithMarkers на true для цветных маркеров вместо цветных текстов.

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

Для одной структуры необходимо задать следующие поля.

  • Labels - Массив ячеек из символьных векторов, задающий метки строк, перечисленные в RowLabels свойство.

  • Colors - Вектор символов или строка, задающая цвет для меток строк. Если это поле пустое, используется цвет по умолчанию (черный).

Для массива структур необходимо задать один элемент в каждом поле для каждой структуры.

  • Labels - Вектор символов или строка, задающая метку строки, указанную в RowLabels свойство.

  • Colors - Вектор символов или строка, задающая цвет для меток строк. Если это поле пустое, используется цвет по умолчанию (черный).

Дополнительные сведения об указании цветов см. в разделе «Опции цвета».

Измерение для кластеризации данных, заданное как положительное целое число, символьный вектор или строка. Варианты:

  • 'column' или 1 - Кластер только вдоль столбцов данных, который приводит к кластеризации строк.

  • 'row' или 2 - Кластер только по строкам данных, который приводит к кластерным столбцам.

  • 'all' или 3 - Кластер вдоль столбцов данных, затем кластер вдоль строк кластеризованных данных.

Пример: 2

Типы данных: double | char | string

Информация для аннотирования групп столбцов, заданная как структура или массив структур.

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

Поля:

  • GroupNumber - Скаляр, задающий номер группы столбцов для аннотации.

  • Annotation - Вектор символов, задающий текст для аннотации группы столбцов.

  • Color - Вектор символов или трехэлементный вектор значений RGB, задающий цвет для маркировки группы столбцов. Дополнительные сведения об указании цветов см. в разделе «Опции цвета». Если это поле пустое, значение по умолчанию 'blue'.

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

Метрика расстояния для перехода к pdist функция для вычисления парных расстояний между столбцами, заданная в виде вектора символов или массива ячеек. Задайте массив ячеек, если метрика расстояния требует дополнительных аргументов. Для примера, чтобы использовать расстояние Минковского с экспонентной p, задайте {'minkowski',p}.

Пример: 'jaccard'

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

Информация о пороге цвета для передачи в dendrogram функция для создания графика дендрограммы, заданная как скаляр, двухэлементный числовой вектор, вектор символов или массив ячеек векторов символов. Эта опция устанавливает 'ColorThreshold' свойство графика дендрограммы. Если вы задаете двухэлементный числовой вектор или массив ячеек, первый элемент предназначен для строк, а второй элемент - для столбцов.

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

Отношение пространства, которое занимают строка и столбец дендрограммы относительно тепловой карты, заданное как скаляр между 0 и 1 или двухэлементный вектор. Если вы задаете скаляр, функция использует его в качестве отношения для дендрограмм как строка, так и столбец. Если вы задаете двухэлементный вектор, функция использует первый элемент для отношения ширины строки дендрограммы к ширине тепловой карты и второй элемент для отношения высоты дендрограммы столбца к высоте тепловой карты. Второй элемент игнорируется для одномерных кластерграмм.

Пример: 0.5

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

Метод Linkage перешел к linkage функция для создания иерархического дерева кластеров для строк и столбцов, заданная в виде вектора символов или двухэлементного массива ячеек векторов символов. Если вы задаете массив ячеек, функция использует первый элемент для редактирования между строками и второй элемент для редактирования между столбцами.

Пример: 'centroid'

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

Флаг для log2 преобразования данных из естественной шкалы, заданный как true или false.

Пример: true

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

Флаг для вычисления оптимального порядка листьев, который максимизирует сходство между соседними листьями, задается как true или false. Значение по умолчанию зависит от размера входа data. Если количество строк или столбцов в data превышает 1500, значение по умолчанию false. В противном случае значение по умолчанию является true.

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

Пример: true

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

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

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

Поля:

  • GroupNumber - Скаляр, задающий номер группы столбцов для аннотации.

  • Annotation - Вектор символов, задающий текст для аннотации группы столбцов.

  • Color - Вектор символов или трехэлементный вектор значений RGB, задающий цвет для маркировки группы столбцов. Дополнительные сведения об указании цветов см. в разделе «Опции цвета». Если это поле пустое, значение по умолчанию 'blue'.

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

Метрика расстояния для перехода к pdist функция для вычисления парных расстояний между строками, заданная как вектор символов или массив ячеек. Задайте массив ячеек, если метрика расстояния требует дополнительных аргументов. Для примера, чтобы использовать расстояние Минковского с экспонентной p, задайте {'minkowski',p}.

Пример: 'jaccard'

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

Флаг для отображения древовидных схем дендрограммы с кластерграммой, заданный как 'on' или 'off'.

Пример: 'off'

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

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

viewОтобразите тепловую карту или кластерграмму
plotОтобразите тепловую карту или кластерграмму
addTitleДобавьте заголовок в тепловую карту или кластерграмму
addXLabelПометьте x -ось тепловой карты или кластерграммы
addYLabelПометьте y -ось тепловой карты или кластерграммы
clusterGroupВыбор группы кластеров

Примеры

свернуть все

Загрузите данные микромассивов, содержащие уровни экспрессии генов Saccharomyces cerevisiae (дрожжи) во время метаболического сдвига от ферментации к дыханию [1].

load filteredyeastdata

Этот файл MAT включает три переменные, которые добавляются в рабочую область MATLAB ®:

- yeastvalues - Матрица данных экспрессии генов из -_cerevisiae_ Saccharomyces во время метаболического сдвига от ферментации к дыханию - genes - массив ячеек с номерами доступа GenBank ® для маркировки строк в yeastvalues - times - вектор значений времени для маркировки столбцов в yeastvalues

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

cgo = clustergram(yeastvalues(1:30,:),'Standardize','Row')
Clustergram object with 30 rows of nodes and 7 columns of nodes.

Используйте set метод и genes и times векторы для добавления значимых меток строк и столбцов к кластерной грамме.

set(cgo,'RowLabels',genes(1:30),'ColumnLabels',times)

Добавить цветовую панель к кластерной грамме можно нажав на Insert Colorbar кнопку на панели инструментов.

Щелкните мышью на всплывающей подсказке, содержащей значение интенсивности, метку строки и метку столбца для определенной области тепловой карты Data Cursor кнопку на панели инструментов, затем щелкните по области в тепловой карте. Чтобы удалить эту всплывающую подсказку, щелкните ее правой кнопкой мыши и выберите Delete Current Datatip.

Отобразите значения интенсивности для каждой области тепловой карты, нажав кнопку Аннотировать (Annotate) на панели инструментов. Снова нажмите кнопку «Аннотации», чтобы удалить значения интенсивности.

Tip: If the amount of data is large enough, the cells within the clustergram
are too small to display the intensity annotations. Zoom in to see the
intensity annotations.

Удалите древовидные схемы дендрограммы из рисунка, нажав кнопку «Показать дендрограмму» на панели инструментов. Щелкните его еще раз, чтобы отобразить дендрограммы.

Используйте get метод отображения свойств объекта кластерграмма, cgo.

get(cgo)
               Cluster: 'ALL'
              RowPDist: {'Euclidean'}
           ColumnPDist: {'Euclidean'}
               Linkage: {'Average'}
            Dendrogram: {}
      OptimalLeafOrder: 1
              LogTrans: 0
          DisplayRatio: [0.2000 0.2000]
        RowGroupMarker: []
     ColumnGroupMarker: []
        ShowDendrogram: 'on'
           Standardize: 'ROW'
             Symmetric: 1
          DisplayRange: 3
              Colormap: [11x3 double]
             ImputeFun: []
          ColumnLabels: {1x7 cell}
             RowLabels: {30x1 cell}
    ColumnLabelsRotate: 90
       RowLabelsRotate: 0
              Annotate: 'off'
        AnnotPrecision: 2
            AnnotColor: 'w'
     ColumnLabelsColor: []
        RowLabelsColor: []
     LabelsWithMarkers: 0

Измените параметры кластеризации путем изменения метода редактирования и изменения цвета групп узлов в дендрограмме, редактирование меньше порога 3.

set(cgo,'Linkage','complete','Dendrogram',3)

Установите курсор на узле ветви в дендрограмме, чтобы подсветить (синяя) связанную с ней группу. Нажмите и удерживайте кнопку мыши, чтобы отобразить всплывающую подсказку с указанием номера группы и узлов (генов или выборок) в группе.

Щелкните правой кнопкой мыши узел ветви в дендрограмме, чтобы отобразить меню опций.

Доступны следующие опции:

- Задать цвет группы - Изменить цвет группы кластеров. - Печать группы в фигуру - Печать группы в окно рисунка. - Копировать группу в новую кластерграмму - Копировать группу в новое окно кластерграммы. - Экспорт группы в рабочую область - Создайте объект кластерграммы группы в рабочем пространстве MATLAB. - Экспорт информации о группе в рабочую область - создание структуры, содержащей информацию о группе, в рабочем пространстве MATLAB. Структура содержит следующие поля:

- GroupNames - Массив ячеек из символьных векторов, содержащий имена групп строк или столбцов. - RowNodeNames - Массив ячеек из символьных векторов, содержащий имена узлов строк. - ColumnNodeNames - Массив ячеек из символьных векторов, содержащий имена узлов столбцов. - ExprValues - матрица M-на-N значений интенсивности, где M и N являются количеством узлов строк и узлов столбцов соответственно. Если матрица содержит данные экспрессии генов, обычно каждая строка соответствует гену, и каждый столбец соответствует выборке.

Создайте объект кластерграмма для группы 18 в рабочем пространстве MATLAB. Щелкните правой кнопкой мыши Группу 18 и выберите Экспортировать группу в рабочую область. В диалоговом окне «Экспорт в рабочую область» введите Group18и нажмите кнопку ОК.

Используйте view метод для просмотра объекта кластерграмма, Group18.

view(Group18)

Просмотрите все данные экспрессии генов с помощью расхождения красных и синих палитр и стандартизируйте вдоль строк данных.

cgo_all = clustergram(yeastvalues,'Colormap',redbluecmap,'Standardize','Row')
Clustergram object with 614 rows of nodes and 7 columns of nodes.

Создайте массивы структур, чтобы задать цвета маркера и аннотации для двух групп строк (510 и 593) и двух групп столбцов (4 и 5).

rm = struct('GroupNumber',{510,593},'Annotation',{'A','B'},...
     'Color',{'b','m'});
cm = struct('GroupNumber',{4,5},'Annotation',{'Time1','Time2'},...
     'Color',{[1 1 0],[0.6 0.6 1]});

Используйте RowGroupMarker и ColumnGroupMarker свойства для добавления маркеров цвета и аннотаций к кластерной грамме.

set(cgo_all,'RowGroupMarker',rm,'ColumnGroupMarker',cm)

Подробнее о

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

Ссылки

[1] DeRisi, J. L. «Исследование метаболического и генетического контроля экспрессии генов в геномной шкале». Наука 278, № 5338 (24 октября 1997): 680-86.

См. также

| |

Представлено до R2006a