如何在迭代列表时获取对象/ get(k,v)对的名称?

时间:2017-11-03 23:09:00

标签: r list loops iterator iteration

假设我创建了一个列表,并为列表中的对象指定了一些名称。

list = rep(0, times = 20)
list = lapply(list, initialize_list)
names(list) = names

现在我想遍历列表中的所有对象。我可以对对象执行任何操作,但我找不到同时获取对象名称的方法。这可以在for循环或lapply调用中实现,而无需明确写入

for (name in names(myList)) {
    v = myList[[name]]
    ...
}

现有的答案似乎并不是我想要的,我似乎只找到一个相关的blog post,它提供了上述看似笨拙的解决方案。

1 个答案:

答案 0 :(得分:1)

您只需使用名称的索引即可。

lst = rep(0, times = 20)
lst = lapply(lst, sum)
names(lst) = letters[1:20]
for (id in seq_along(names(lst))) {
  v = names(lst)[id]
}