有没有一种简单的方法可以使用两个标准(第二个标准是关系)对 R 中的值进行排名?

Is there an easy way to rank values in R using two criteria (the second one being for the ties)?

我一直想知道是否有一种简单的方法可以使用两个标准对 R 中的值进行排名:一个用于主要排名,另一个用于对关系进行排名。

例如,假设我们有以下几组数字:

a <- c(9,13,6,3,7,1,13)
b <- c(1,4,3,6,5,7,2)

现在,假设我们要使用 b 中的信息对 a 进行排名,以处理 rank(a) 中的并列,所以我们最终得到以下结果:

> 5 7 3 2 4 1 6

有没有一种简单的方法可以在 R 中获得它? rank 中处理关系的选项对此没有帮助。

PS:关于 rank 和 ties 已经有一个类似的问题,但它不是重复的,因为尽管它的标题暗示如此,但它并不是真正在问同样的事情:Is there a simple way to rank on multiple criteria that preserves ties in R?

假设所有关系实际上都已断开:

order(order(a, b))
#[1] 5 7 3 2 4 1 6

可能有更有效的替代方案。