【发布时间】:2021-08-02 07:17:58
【问题描述】:
我有一个包含嵌套列表的列表 list_tot。
我想子集或创建一个新列表,根据指定的参数选择特定子集,详细信息如下:
List_1 <- list(a = matrix(5,2), b = matrix(5,7), c = matrix(5,9), d = matrix(5,3))
List_2 <- list(a = matrix(7,3), b = matrix(7,7), c = matrix(7,1), d = matrix(7,9))
List_3 <- list(a = matrix(5,2), b = matrix(5,7), c = matrix(5,9), d = matrix(5,3))
List_4 <- list(a = matrix(5,2), b = matrix(5,7), c = matrix(5,9), d = matrix(5,3))
List_5 <- list(a = matrix(5,2), b = matrix(5,7), c = matrix(5,9), d = matrix(5,3))
List_tot <- list(List_1, List_2, List_3, List_4, List_5)
上面写着:
[[1]]
[[1]]$a
[,1]
[1,] 5
[2,] 5
[[1]]$b
[,1]
[1,] 5
[2,] 5
[3,] 5
[4,] 5
[5,] 5
[6,] 5
[7,] 5
[[1]]$c
[,1]
[1,] 5
[2,] 5
[3,] 5
[4,] 5
[5,] 5
[6,] 5
[7,] 5
[8,] 5
[9,] 5
[[1]]$d
[,1]
[1,] 5
[2,] 5
[3,] 5
[[2]]
[[2]]$a
[,1]
[1,] 7
[2,] 7
[3,] 7
[[2]]$b
[,1]
[1,] 7
[2,] 7
[3,] 7
[4,] 7
[5,] 7
[6,] 7
[7,] 7
[[2]]$c
[,1]
[1,] 7
...etc
我要选择:
- 对于每个嵌套列表,仅选择列表/矩阵 a、c 和 d。
- 为每个嵌套列表选择两个具有最高行数的列表/矩阵。
所以New_List_tot 的输出为:
上面写着:
[[1]]
[[1]]$c
[,1]
[1,] 5
[2,] 5
[3,] 5
[4,] 5
[5,] 5
[6,] 5
[7,] 5
[8,] 5
[9,] 5
[[1]]$d
[,1]
[1,] 5
[2,] 5
[3,] 5
etc...
任何帮助都会有所帮助。我所有的尝试,尝试使用 plyer 和 dplyr,但没有成功并且非常卡住。
【问题讨论】: