r - 如何修复 r : 'more cluster centers than distinct data points' 中的 kmeans 错误

标签 r k-means hierarchical-clustering

当我运行 kmeans 算法时,我收到此错误:

Error in kmeans(x, 2, 15) : 
  more cluster centers than distinct data points.

如何修复此错误?它是什么意思?我认为我的数据点是不同的?

这是我的文件和我用来生成 kmeans 的 r 代码:

rnames.csv : 
"a1","a2","a3"

cells.csv : 
0,1,2,1,4,3,5,3,4

cnames.csv : 
"google","so","test"

cells = c(read.csv("c:\\data-files\\kmeans\\cells.csv", header = TRUE))
rnames = c(read.csv("c:\\data-files\\kmeans\\rnames.csv", header = TRUE))
cnames = c(read.csv("c:\\data-files\\kmeans\\cnames.csv", header = TRUE))

x <- matrix(cells, nrow=3, ncol=3, byrow=TRUE, dimnames=list(rnames, cnames))

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

最佳答案

修复此问题的方法是使用:

cells = c(read.csv("c:\\data-files\\kmeans\\cells.csv", header = FALSE))
rnames = c(read.csv("c:\\data-files\\kmeans\\rnames.csv", header = FALSE))
cnames = c(read.csv("c:\\data-files\\kmeans\\cnames.csv", header = FALSE))

而不是

cells = c(read.csv("c:\\data-files\\kmeans\\cells.csv", header = TRUE))
rnames = c(read.csv("c:\\data-files\\kmeans\\rnames.csv", header = TRUE))
cnames = c(read.csv("c:\\data-files\\kmeans\\cnames.csv", header = TRUE))

关于r - 如何修复 r : 'more cluster centers than distinct data points' 中的 kmeans 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17097082/

相关文章:

hadoop - KMeanClustering中的类未找到异常--Mahout

r - 在 R 中使用 hclust 进行加权观察频率聚类

machine-learning - 如何对大相似度矩阵进行层次聚类

r - 在 ggplot2 上覆盖 ggmap 、 geom_polygon(shape file)

r - 避免 dplyr 中向量和变量名之间的冲突

matlab - 在 MATLAB 中获取最接近的数据点的索引到 Kmeans 聚类中的质心

python - Scipy 树状图叶标签颜色

r - 从 R session 中设置 --args 的值

r - 如何从嵌套列表中提取每个 ggplot2 图

python - 内存错误 Numpy/Python 欧几里得距离