【问题标题】:How to label k-means clusters in r如何在 r 中标记 k-means 簇
【发布时间】:2013-07-07 15:15:26
【问题描述】:

关于 kmeans 聚类的 wikibook (http://en.wikibooks.org/wiki/Data_Mining_Algorithms_In_R/Clustering/K-Means) 给出了一个聚类分析示例:

是否可以修改代码以便从每个集群中生成一个标签?下图不表示正在比较的内容。共有三个集群,但每个集群的名称是什么?

这是生成图表的代码:

# import data (assume that all data in "data.txt" is stored as comma separated values)
x <- read.csv("data.txt", header=TRUE, row.names=1)

# run K-Means
km <- kmeans(x, 3, 15)

# print components of km
print(km)

# plot clusters
plot(x, col = km$cluster)
# plot centers
points(km$centers, col = 1:2, pch = 8)

【问题讨论】:

  • 集群在您显示的图中未标记,但它们按集群着色(例如,红点来自一个集群,黑点来自另一个集群,等等)。当您说“集群的名称”时,您是什么意思?
  • @ialm 要描述哪些集群彼此靠近,每个集群都有一个标签可能很有用,但颜色就足够了,谢谢
  • 我还添加了一个答案来绘制实际标签,如果你真的想的话!

标签: r k-means


【解决方案1】:

正如我在 cmets 中提到的,集群已经用颜色“标记”了,其中不同的颜色与集群成员相关联。要绘制“集群标签”,您可以使用:

plot(x, type='n')
text(x, labels=km$cluster, col=km$cluster)

这应该绘制“集群名称”而不是点,并且还按集群为标签着色。

【讨论】:

    猜你喜欢
    • 2021-03-30
    • 2014-07-12
    • 1970-01-01
    • 2016-12-18
    • 2021-06-18
    • 2016-04-14
    • 2016-11-26
    • 2015-01-05
    • 2016-12-03
    相关资源
    最近更新 更多