使用matlab对数据进行聚类

时间:2014-04-15 14:25:38

标签: matlab cluster-analysis hierarchy dendrogram

我正在尝试群集我的数据。这是我的数据示例:

genes   param1  param2  ...
gene1   0.224   -0.113  ...
gene2   -0.149  -0.934  ...

我有一千个基因和一百个参数。我希望通过基因和参数对数据进行聚类,并使用clustergram进行聚类。由于有很多基因,使用图片很难理解任何东西。现在我想在我的数据中获得15-20个最大基因簇的文本信息。我的意思是15-20个基因列表,属于不同的集群。我怎样才能做到这一点? 感谢

这是我的数据中的clustergram示例: Clustergram

这里有垂直和水平树形图。因为有很多行,所以在垂直树状图上看不到任何东西是不可能的(我只需要这个)。 据我所知,树形图从我的数据中创建了一个二进制簇,并且有N行数据的N-1个簇。由于这些是二进制簇,所以有一个簇,下一步它会分成两个,然后再一次分为两个等等。我是否可以获得有关哪些基因在第4步中哪些聚类的信息,例如,当有16个聚类时?

1 个答案:

答案 0 :(得分:1)

要更清楚地查看树状图和热图的有趣部分,您可以使用工具栏上的缩放按钮选择感兴趣的区域并放大它们。

要找出特定群集中的哪些基因/变量,请右键单击其中一个代表您感兴趣的群集的树形图中的点,然后选择“导出到工作区”。您将获得包含以下字段的结构:

  1. GroupNames - 包含行或列组名称的文本字符串的单元格数组。
  2. RowNodeNames - 包含行节点名称的文本字符串的单元格数组。
  3. ColumnNodeNames - 包含列节点名称的文本字符串的单元格数组。
  4. ExprValues - 强度值的M-by-N矩阵,其中M和N分别是行节点数和列节点数。