【发布时间】:2013-02-23 07:56:13
【问题描述】:
我正在使用以下方法进行 kmeans 分析:
km = kmeans(mat2, centers = 4)
我还使用library(fpc) 绘制了kmeans 分析,以获得如下视觉效果:
plotcluster(mat2, km$cluster)
结果如下:
mat2 的每一行对应图中的一个点。我给矩阵中的每一行取了一个名字:
rownames(mat2) = names #names is a vector corresponding to the rows of mat2
我可以通过以下属性找到矩阵中每一行的隶属关系:
km$cluster
这给出了矩阵中每一行的名称,后跟图中对应的整数。不过,我想访问更多数据。
如何从这些聚类点访问更多数据?例如,我想找到图中的整数和矩阵中的行之间的对应关系。为了澄清,回答这个问题可以让我知道矩阵中的哪一行对应于图中最高的 2?一旦我知道了哪些整数对应于矩阵中的哪些行,那么我就有了矩阵中每一行的名称,并且可以给出有意义的解释。
我还想找到图中某个点与其所属集群中心之间的距离度量。我可以得到图中的(x,y)坐标与矩阵中的行之间的对应关系吗?我能否获得一个交互式 GUI,以便当我单击图中的一个聚类点时,我可以看到更多上述数据?我愿意使用不同的库进行绘图。总结为两个问题:
- 如何获得图中的整数与矩阵中的行之间的对应关系?
- 是否有现有的包或工具可以让我更轻松地完成这项工作?
非常感谢所有帮助!
【问题讨论】:
-
您在问几个离散的问题,因此一个答案无法涵盖所有问题。考虑提炼?
-
底部的问题澄清了主要问题。
-
str(mat2)的输出是什么? -
矩阵的维度是291 X 31。那么每一行都有一个名字。
-
“获取图中的整数和矩阵中的行之间的对应关系”可以使用一种称为“刷”的技术来完成。我已经在 S-Plus 中使用了该技术,效果很好,但在 R 中没有。(iPlots)[rosuda.org/iplots/iplots.html] 是 R 的一个图形包,似乎包括刷牙作为一项功能——正如我所说,我没有不过用过。
标签: r statistics k-means correspondence