将列表元素保存为lapply函数中的名称

时间:2015-02-19 10:58:50

标签: r

说我有以下内容:

seq<-c(2,3,4)
added<-lapply(1:length(seq),function(i){
       seq[i]+1
       }
)

> added
[[1]]
[1] 3

[[2]]
[1] 4

[[3]]
[1] 5

如何使用seq中的列表元素来命名添加&#39;?

的列表元素

> added
  [[2]]
  [1] 3

  [[3]]
  [1] 4

  [[4]]
  [1] 5

谢谢

来自@akrun的

接受解决方案

seq<-c(2,3,4)
added<-setNames(lapply(1:length(seq),function(i){
seq[i]+1
}
),seq1)

2 个答案:

答案 0 :(得分:3)

你可以尝试

 added <- setNames(added, seq)

或者

 names(added) <- seq

答案 1 :(得分:0)

library(purrr) seq<-c(2,3,4) set_names(seq, seq_along(seq))

seq %>% set_names(seq_along(.))