R-R中的连续K均值聚类操作

塞达·奥克塞尔(Ceyda Oksel)

假设我们有一个10x5数据集,其中包含10个葡萄酒样品(行)的5个化学测量值(例如var1,var2,var3,var4,var5)。我们希望使用k均值聚类基于化学测量结果对葡萄酒样品进行聚类。这样做很容易。但是,我想执行连续的聚类,首先使用单个化学测量值对葡萄酒样品进行聚类,然后对var1,var2,var3,var4和var5的所有组合(所有一元,二元,三元,四元和五进制组合)。

换句话说,我有兴趣根据列中给出的所有可能的测量组合对葡萄酒样品进行聚类,这将导致总共31个聚类结果,例如,基于(1)var1,(2)var2,( 3)var3,(4)var4,(5)var5,(6)var1和var2,(7)var1和var3,...,(31)var1,var2,var3,var4和var5。

如何在R中创建这样的循环?

乔斯利伯

假设您有一个数据集:

set.seed(144)
dat <- matrix(rnorm(100), ncol=5)

现在,您可以获取列的所有子集(由逻辑矢量表示是否应保留每一列),然后删除第一列(这将删除所有列)。

(cols <- do.call(expand.grid, rep(list(c(F, T)), ncol(dat)))[-1,])
#     Var1  Var2  Var3  Var4  Var5
# 2   TRUE FALSE FALSE FALSE FALSE
# 3  FALSE  TRUE FALSE FALSE FALSE
# 4   TRUE  TRUE FALSE FALSE FALSE
# ...
# 31 FALSE  TRUE  TRUE  TRUE  TRUE
# 32  TRUE  TRUE  TRUE  TRUE  TRUE

最后一步是为列的每个子集运行k均值聚类,这是一个简单的应用程序apply(我假设您在每个模型中都需要3个聚类):

mods <- apply(cols, 1, function(x) kmeans(dat[,x], 3))

您可以使用列表索引访问31个k均值模型。例如:

mods[[1]]
# K-means clustering with 3 clusters of sizes 7, 5, 8
# 
# Cluster means:
#         [,1]
# 1 -1.4039782
# 2 -0.4215221
# 3  0.3227336
# 
# Clustering vector:
#  [1] 1 3 2 1 1 3 3 1 3 3 2 3 2 1 3 3 2 1 1 2
# 
# Within cluster sum of squares by cluster:
# [1] 0.4061644 0.1438443 0.7054191
#  (between_SS / total_SS =  89.9 %)
# 
# Available components:
# 
# [1] "cluster"      "centers"      "totss"        "withinss"     "tot.withinss" "betweenss"   
# [7] "size"         "iter"         "ifault"   

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R-R中的连续K均值聚类操作

来自分类Dev

使用R获得k均值聚类分析中的聚类均值

来自分类Dev

使用R总结聚类中的变量变化(k-均值)

来自分类Dev

K表示R中的聚类功能

来自分类Dev

在 R 中聚类时从 ClusGap 获取 K

来自分类Dev

R 中的 k 模式聚类在每次运行时返回不同的聚类大小

来自分类Dev

在R中的K均值中标记特定聚类

来自分类Dev

R中的平行k均值

来自分类Dev

R中的成对K均值

来自分类Dev

R中的空间聚类(简单示例)

来自分类Dev

R中的分层聚类-'pvclust'问题

来自分类Dev

R:聚类文件

来自分类Dev

R:分层聚类

来自分类Dev

聚类,Mclust(),提取聚类-R

来自分类Dev

在R中将散点图聚类

来自分类Dev

使用R的分层聚类

来自分类Dev

使用R的分层聚类

来自分类Dev

R中的功能可将表列中的条目聚类

来自分类Dev

R进行聚类,热图分析并从聚类中获取信息

来自分类Dev

R ggplot中的热图中的聚类数据

来自分类Dev

在R中聚类后绘制数据的热图

来自分类Dev

如何总结R中的pam聚类结果?

来自分类Dev

使用R中的聚类运行多个回归

来自分类Dev

聚类向量在R中得到零一矩阵

来自分类Dev

在K表示使用R进行聚类之后,检索最接近每个聚类质心的100个样本

来自分类Dev

在 R 中使用 medoids(聚类中心)聚类数据

来自分类Dev

R中均值组的均值

来自分类Dev

从R的热图函数获取聚类?

来自分类Dev

R:聚类-如何预测新病例?