推荐答案
在 R 语言中,可以使用 kmeans()
函数进行 K 均值聚类。以下是一个简单的示例代码:
-- -------------------- ---- ------- - ------ ------------- ---- -- ------------------ ---- - -- - -- - ---- - -- - - ------ ------ -- ------------ ------- - -- - ------ --------------------- - --------- --------------------- - --------
本题详细解读
1. kmeans()
函数简介
kmeans()
是 R 语言中用于执行 K 均值聚类的函数。它通过迭代优化将数据划分为 K 个簇,使得每个数据点都属于离其最近的簇中心。
2. 参数说明
data
: 输入的数据矩阵或数据框,每一行代表一个样本,每一列代表一个特征。centers
: 聚类的数量 K,或者是一个包含初始聚类中心的矩阵。iter.max
: 最大迭代次数,默认为 10。nstart
: 随机初始化的次数,默认为 1。通常建议设置为较大的值(如 25)以获得更稳定的结果。
3. 返回值
kmeans()
函数返回一个包含多个组件的列表,其中最重要的组件包括:
cluster
: 每个样本的聚类标签。centers
: 每个聚类的中心点。totss
: 总平方和。withinss
: 每个簇内的平方和。tot.withinss
: 所有簇内的平方和之和。betweenss
: 簇间的平方和。
4. 示例代码解析
set.seed(123)
: 设置随机种子以确保结果可重复。data <- matrix(rnorm(100), ncol = 2)
: 生成一个 50 行 2 列的随机数据矩阵。k <- 3
: 设置聚类数量为 3。result <- kmeans(data, centers = k)
: 执行 K 均值聚类。print(result$cluster)
: 输出每个样本的聚类标签。print(result$centers)
: 输出每个聚类的中心点。
通过以上步骤,你可以在 R 语言中轻松实现 K 均值聚类。