我有一个深度等于 2 的列表。我想按照以下示例中所述为该列表添加下标:
my.list<-list(
a=list(
a1=1:10,
a2=11:20),
b=list(
b1=21:30,
b2=31:40),
c=list(
c1=41:50,
c2=51:60)
)
# choose a specific item
my.list[[2]][[2]][[3]]
# choose all first items from a1,a2,b1,b2,c1,c2
test<-list()
for(i in 1:3)
for (j in 1:2)test[[i]][[j]]<-my.list[[i]][[j]][[1]]
test
Error in `*tmp*`[[i]] : subscript out of bounds
但这不起作用,因为我创建的列表中没有列表。这样做的方法是:
test<-list()
for(i in 1:3)
for (j in 1:2)test[[i]]<-my.list[[i]][[j]][[1]]
接着
test<-list()
for(i in 1:3)
for (j in 1:2)test[[i]][[j]]<-my.list[[i]][[j]][[1]]
test
给出:
[[1]]
[1] 1 11
[[2]]
[1] 21 31
[[3]]
[1] 41 51
...