创建多变量相似性图

时间:2014-05-07 20:13:33

标签: r graph cluster-analysis knn spectral

我正在尝试在R中的多变量数据集上学习和实现谱聚类。我有9个自变量和1个因变量,它是二进制的。

作为光谱聚类的第一步,我需要根据给定的数据集创建一个图形(我有大约1000个观察结果)。因为我刚刚开始,我并不真正关心用于创建图形的方法,但如果它使用k-最近邻居会更好。

我在包nng中找到了一个函数cccd,它创建了图表。 我使用了以下内容:

knnGraph<-nng(as.matrix(data[2:10]),k=3)

这样运行正常,但是当我尝试使用plot(knnGraph)来显示图表时,我收到以下错误:

Error in layout.norm(layout, -1, 1, -1, 1) : 
  `layout' should have 2 or three columns

我不知道如何继续,任何帮助将不胜感激。 我还试图找到在R中实现谱聚类的分步教程,但无法找到它。任何此类资源的任何指针也将非常受欢迎。

1 个答案:

答案 0 :(得分:0)

好像nng至少想要一个二维矩阵。这个例子似乎在运行

library(cccd)
data<-runif(50)
knnGraph<-nng(matrix(data[2:10], ncol=2),k=3)
plot(knnGraph)

请注意,我已将as.matrix更改为matrix并添加了nol=2以向其提供第二个维度。我之前从未使用过那个函数,所以我不知道它在那个参数中真正想要的是什么,但看起来as.matrix(data[2:10])返回的9x1矩阵不会削减它。