R:如何根据另一个订单列表项目?

问题描述:

我想根据另一个列表对一个列表中的项目/对象进行排序。这里一个简单的例子,我有矢量V的列表和矩阵米的列表:R:如何根据另一个订单列表项目?

v <- list(b=c(9,10), a=c(11,12)) 
m <- list(a=matrix(c(1,2,3,4), nrow=2), 
      b=matrix(c(5,6,7,8), nrow=2)) 

我想到目前为止,没有结果:

v[order(match(v,m))] 
lapply(v, function(x) x[order(match(x,m))]) 

我预期的结果是:

> v 
$a 
[1] 11 12 

$b 
[1] 9 10 

想法?由于

我们可以使用names(m)到子集v

v[names(m)]