r - 如何使用 kkmeans(kernlab 包)分配新集群
问题描述
包中的函数kkmeans
在kernlab
特定数据集中执行 Kernl K-Means。但是,当我运行该函数时,它只会返回中心、簇大小和簇内平方和。这是一个例子
library(kernlab)
test<-kkmeans(as.matrix(iris[,-5]),3)
test
但我对每个观察的集群成员分类感兴趣。有人知道如何将这些值存储在向量中吗?
解决方案
如果您查看test
变量,您会看到集群成员身份存储在.Data
组件中。您可以使用以下方式访问它:
cluster_membership <- test@.Data
print(cluster_membership)
输出:
[1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2
[75] 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3
[149] 3 2
但是,如果您愿意,可以使用测试变量本身进行绘图,因为它将vector
类扩展为specc
对象:
plot(iris, col=test)
推荐阅读
- python - 如何在二元分类器中标准化模型概率分数?
- serverless-framework - 如何在没有 lambda 的无服务器框架配置(适用于 AWS)中实现重定向(301 代码)模拟
- c# - 对 C# 距离转换器感到困惑
- r - 如何在 R 中使用 ggplot 将回归系数显示为条形图
- c++ - 检测到堆损坏:在正常块 C++ 动态 2D 数组之后
- google-apps-script - Google 表格脚本:在 setFormula() 中引用不同的表格
- python - Bokeh + Python - 将鼠标悬停在 vbar 上,而数据来自 pandas
- android - 从 RELATIVE_PATH + DISPLAY_NAME 获取媒体的 URI 或 ID
- typescript - 使用条件返回类型实现泛型函数
- c++ - C++“noskipws”没有按预期工作,如何正确允许字符串中的空格?