【发布时间】:2022-01-31 06:45:30
【问题描述】:
这类似于:Arranging rows in custom order using dplyr 但我正在寻找不同的结果...
v1 <- rep(LETTERS[1:3], each = 2)
v2 <- rep(c("Seg1", "Seg2"), times = 3)
v3<- c(300,200,500,700,600,550)
df<- data.frame(v1,v2,v3)
这是我原来的 df,我们看到了 A、A、B、B、C、C 的顺序 我想更改顺序,所以它将是 C、A、B、C、A、B 我尝试使用
df %>%
arrange(match(v1, c("C", "A", "B")), desc(v2), desc(v3))
但这给了我们一个看起来像 C,C,A,A,B,B 的结果
原始df:
我想要的结果:
我得到了不想要的结果:
【问题讨论】:
-
您的问题有点不清楚,但我认为您希望
v2作为主键?df[order(df$v2, match(df$v1, c("C", "A", "B"))),]