如何为R中的两个列表运行嵌套的for循环?

时间:2019-04-25 14:33:22

标签: r list dataframe for-loop nested

我有两个列表,这些列表代表Domo中的数据表,我正在使用Domo API进行检索:

id = list(1,2,3)
tablename = list(a,b,c)

我正在尝试通过DomoR :: fetch函数获取数据并将其命名为R中的数据帧。我该怎么做?我想是这样吗?

for(x in id){
  for(y in tablename){
    y = DomoR::fetch(x)
  }
}

如果不使用for循环,这就是我想要的:

a<-DomoR::fetch(1)
b<-DomoR::fetch(2)
c<-DomoR::fetch(3)

1 个答案:

答案 0 :(得分:0)

我不熟悉DomoR,但基于评论,并且没有可复制的示例,我认为这就是您所需要的

id <- c(1,2,3)
my.names <- c("a","b","c")

tablename <- list()
for(y in 1:length(my.names)){
    tablename[[y]] <-  DomoR::fetch(id[y])
}

names(tablename) <- my.names

现在,表名的第一个元素将包含表ID“ 1”中的元素,依此类推。 tablename列表上的元素是根据my.names的名称命名的。

为了简化语法,我制作了idmy.names向量而不是列表。