我有一个列表,其中处理了n个数据,每个数据中有15个数组。我必须为每种数组创建一个列表,例如
list1 <- Dados_processados[[1]][[1]], Dados_processados[[2]][[1]],
Dados_processados[[3]][[1]]...Dados_processados[[n]][[1]]
这是数据的样子
我试图用'while'来做到这一点,但是它出错了。
答案 0 :(得分:0)
为使示例更小,我将n
设为3
,并将每个列表的长度设为5
,而不是15
。
l <- list(
as.list(1:5),
as.list(11:15),
as.list(21:25)
)
str(l)
#> List of 3
#> $ :List of 5
#> ..$ : int 1
#> ..$ : int 2
#> ..$ : int 3
#> ..$ : int 4
#> ..$ : int 5
#> $ :List of 5
#> ..$ : int 11
#> ..$ : int 12
#> ..$ : int 13
#> ..$ : int 14
#> ..$ : int 15
#> $ :List of 5
#> ..$ : int 21
#> ..$ : int 22
#> ..$ : int 23
#> ..$ : int 24
#> ..$ : int 25
purrr::transpose
将按照您描述的方式将列表“由内而外”。
l2 <- purrr::transpose(l)
str(l2)
#> List of 5
#> $ :List of 3
#> ..$ : int 1
#> ..$ : int 11
#> ..$ : int 21
#> $ :List of 3
#> ..$ : int 2
#> ..$ : int 12
#> ..$ : int 22
#> $ :List of 3
#> ..$ : int 3
#> ..$ : int 13
#> ..$ : int 23
#> $ :List of 3
#> ..$ : int 4
#> ..$ : int 14
#> ..$ : int 24
#> $ :List of 3
#> ..$ : int 5
#> ..$ : int 15
#> ..$ : int 25