首页 > 解决方案 > cbind与R中的循环

问题描述

我是 R 的新手,我有一个问题所以我的问题是:我有多个表 ex: 10 ,也不同于与此表相关的 kmeans 结果列表 (10)。所以我想使用 cbind 来将每个集群添加到它的表中:

前任:

NEW_table1<- cbind(table1,kmeans_table1$cluster)
NEW_table2<- cbind(table2,kmeans_table2$cluster)

...

我已尝试使用此代码,但出现错误

for (i in 1:10)
{ assign(paste0("NEW_table", i)<-cbind(as.name(paste0("filter_table",i)),Class=(i$cluster) )) 
}

> Error in i$cluster : $ operator is invalid for atomic vectors

标签: rloopscbind

解决方案


我想你想要的可能如下所示

list2env(setNames(lapply(paste0("table",1:10), function(v) cbind(get(v),get(paste0("kmeans_",v))$cluster)),
                  paste0("NEW_table",1:10)),
         envir = .GlobalEnv)

推荐阅读