두 개의 목록이 있으며 다른 목록을 사용하여 목록의 데이터를 부분 집합으로 만들고 싶습니다.다른 목록을 사용하여 목록의 하위 집합을 만드는 방법은 무엇입니까?
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 <- list(a = 5:6,
b = 7:8)
> hislist
$a
[1] 5 6
$b
[1] 7 8
hislist
내가 lapply 기능을 사용하여 myList에 부분 집합을 시도 :
lapply(mylist, function(x) subset(x, colb %in% hislist))
#or
lapply(mylist, function(x) x[x$colb %in% hislist,])
그러나이 작동하지 않는 말, 나는 mylist
및 hislist
라는 목록이 있습니다. 이 문제를 해결하는 방법?
예, 이것이 올바른 결과를주는 것 같습니다! – jrara