我有两个列表,我想使用另一个列表在列表中的数据子集。我说,我有所谓的名单和mylist
hislist
:如何使用另一个列表对列表进行子集划分?
mylist <- list(a = data.frame(cola = 1:3, colb = 4:6),
b = data.frame(cola = 1:3, colb = 6:8))
> mylist
$a
cola colb
1 1 4
2 2 5
3 3 6
$b
cola colb
1 1 6
2 2 7
3 3 8
>
和hislist
hislist <- list(a = 5:6,
b = 7:8)
> hislist
$a
[1] 5 6
$b
[1] 7 8
我试图子集MYLIST使用lapply功能:
lapply(mylist, function(x) subset(x, colb %in% hislist))
#or
lapply(mylist, function(x) x[x$colb %in% hislist,])
但这些不工作。如何解决这个问题?
是的,这似乎给出了正确的结果! – jrara