我有一个嵌套列表l3:
l1<- as.list(c(1,2,3,4,5))
l1
l2<- as.list(c(6,7,8,9,10))
l2
l3<- list(l1,l2)
l3
l3显示为:
> l3
[[1]]
[[1]][[1]]
[1] 1
[[1]][[2]]
[1] 2
[[1]][[3]]
[1] 3
[[1]][[4]]
[1] 4
[[1]][[5]]
[1] 5
[[2]]
[[2]][[1]]
[1] 6
[[2]][[2]]
[1] 7
[[2]][[3]]
[1] 8
[[2]][[4]]
[1] 9
[[2]][[5]]
[1] 10
我需要添加第三个列表l4到l3,以便l3变为:
[[1]][[1]]
[1] 1
to
[[2]][[5]]
[1] 10
[[3]][[1]]
[1] 30
[[3]][[2]]
[1] 32
[[3]][[3]]
[1] 33
[[3]][[4]]
[1] 34
[[3]][[5]]
[1] 35
其中l4是:
l4<- as.list(c(31,32,33,34,35))
我该如何完成它?我已经尝试了(c)
,list
,甚至明确地设置了参数并获得了out of bounds error
。我可以用什么来完成这项工作?
答案 0 :(得分:19)
适用于append
和list
:
append(l3, list(l4))
结果:
> str(append(l3, list(l4)))
List of 3
$ :List of 5
..$ : num 1
..$ : num 2
..$ : num 3
..$ : num 4
..$ : num 5
$ :List of 5
..$ : num 6
..$ : num 7
..$ : num 8
..$ : num 9
..$ : num 10
$ :List of 5
..$ : num 31
..$ : num 32
..$ : num 33
..$ : num 34
..$ : num 35
答案 1 :(得分:9)
我不知道您使用c
尝试了什么,但它有效
c(l3,list(l4))
PS:append
是要插入特定索引的c
的包装器(参见参数后)