【发布时间】:2021-07-05 09:55:28
【问题描述】:
我刚开始使用 R。我需要在 2 到 20 个集群的数据上绘制由 K-means 聚类提供的集群方差。
这是我的代码:
w <- numeric(20)
for (k in 2:20) {
kf <- kmeans(whs2018annexBdatscl,k,nstart=100)
w[k] <- kf$tot.withinss
}
plot(2:20,w,type = "b", lwd= 2, pch= 19, xlab="K", ylab = expression(SS[within]))
我收到以下错误代码: xy.coords(x, y, xlabel, ylabel, log) 中的错误: “x”和“y”长度不同
当我从 1:20 开始绘制时,它起作用了,但我应该在 2:20 绘制。请问我做错了什么。
【问题讨论】:
-
在你的情节中应该是
1:20而不是2:20。 w 中有 20 个元素,因此您的 x 轴应该有 20 个元素,因为第一步的总平方和和平方和内的总和是相同的。您从 2 开始循环,但 w 确实包含 1 次迭代平方和值。 -
仅供参考,您最近有提问的习惯,我们无法重现它们。我们没有您的数据,不知道它的结构,因此必须进行推测。这导致了您长期未回答的问题。我强烈建议您调整提问的方式,使其独立且可重复;请参阅stackoverflow.com/q/5963269、minimal reproducible example 和 stackoverflow.com/tags/r/info。谢谢,祝你好运。
标签: r