【发布时间】:2016-08-18 13:01:24
【问题描述】:
我想在我的一个项目中进行层次聚类。
我最初的问题是我有一个巨大的图表,我在上面迭代了大量路径并以以下格式报告了路径节点。所以下面示例中的每个数字代表一个图形节点,行代表一个路径。现在我想根据共享节点的数量对这些路径进行聚类,以隔离相似类型的路径。
1210, 158, 1222, 1468
1210, 1222, 198
158, 1468, 25, 26, 27, 28
现在我想根据相似节点的数量在行之间进行层次聚类。在上表中,由于节点 1210 和 1222 相同,行(路径)1 和 2 可能是一个集群的一部分。由于节点 158 和 1468 相似,行(路径)1 和 3 也可能是另一个集群的一部分。
我检查了我可以使用hclust 函数进行层次聚类。该函数将相异矩阵作为参数。我不确定如何创建这个距离度量。似乎它可以使用 Jaccard 相似性度量。但我在 dist 方法中没有找到 Jaccard 相似性以及上述可变列格式的任何选项。
问候,
【问题讨论】:
-
我可以确认您的数据基本上是一个二进制数据集,其中每一行代表一个观察/样本,每个节点编号是该观察/样本的变量吗?
-
每一行代表一个图的路径,数字代表该路径中的顶点。
-
是的,这就是数据的描述。但是考虑到您想要做的事情,即运行基于相似节点的分层集群,将整个数据集视为二进制数据集不是更容易吗。无论如何,您都需要一个二进制集来导出 Jaccard 距离。
标签: r hierarchical-clustering unsupervised-learning