【发布时间】:2020-07-11 22:27:30
【问题描述】:
我有一个列表列表,我想将其转换为元素将是向量的列表列表。
具体来说,l: list of 180 elements、l[[1]]: list of 12 elements 和l[[1]][[1]]: list of 20 elements,每一个都有一个名字和一个值。如何得到一个12个元素的列表,其中每个元素是20个向量的列表,每个向量包含180个元素。
而不是调用 mapply(c,l[[1]][[1]]$id, l[[2]][[1]]$id, .... l[[180]][[1]]$id, SIMPLIFY=FALSE) 并为每个键重复此操作,有没有办法在循环中执行此操作?
例子:
> a<-list(1,'a',1.2)
> b<-list(2,'b',0.1)
> d<-list(3,'d',3)
> e<-list(4,'e',0.1)
> x<-list(a,b)
> y<-list(d,e)
> z<-list(x,y)
想要的输出:
#> [[1]]
#> [[1]][[1]]
#> [1] 1 3
#>
#> [[1]][[2]]
#> [1] 'a' 'd'
#>
#> [[1]][[3]]
#> [1] 1.2 3
#>
#> [[2]][[1]]
#> [1] 2 4
#>
#> [[2]][[2]]
#> [1] 'b' 'e'
#>
#> [[2]][[3]]
#> [1] 0.1 0.1
有什么想法吗?
【问题讨论】: