R:如何根据另一个列表订购商品?

时间:2015-11-04 12:36:29

标签: r list sorting

我想根据另一个列表对一个列表的项目/对象进行排序。这里有一个简单的例子,我有一个向量列表v和一个矩阵列表m:

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

想法?感谢

1 个答案:

答案 0 :(得分:3)

我们可以使用names(m)v

进行分组
v[names(m)]