Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
正确使用dplyr::arrange with dynamic sort by columns的方法_R_Tidyverse - Fatal编程技术网

正确使用dplyr::arrange with dynamic sort by columns的方法

正确使用dplyr::arrange with dynamic sort by columns的方法,r,tidyverse,R,Tidyverse,我试图弄清楚如何使用tidyverse动态排列数据帧。我以前使用arrange,但现在不推荐使用 还有一些细节。如果是数字,我需要安排降序;如果不是,则需要安排升序。我有内置的逻辑,但我不知道如何让这个工作安排 一些数据: library(tidyverse) dat <- tibble(`Project ID` = c(rep("Project A", 3), rep("Project B", 3), rep("Project C&quo

我试图弄清楚如何使用tidyverse动态排列数据帧。我以前使用arrange,但现在不推荐使用

还有一些细节。如果是数字,我需要安排降序;如果不是,则需要安排升序。我有内置的逻辑,但我不知道如何让这个工作安排

一些数据:

library(tidyverse)
dat <- tibble(`Project ID` = c(rep("Project A", 3), rep("Project B", 3), rep("Project C", 3)),
                  `Summary Col numeric` = c(50, 50, 20, 500, 500, 200, 3000, 1000, 3000),
                  `Summary Col alpha` = c("A", "B", "C", "A", "B", "C", "A", "B", "C"))
库(tidyverse)

dat也许您可以使用本文提出的解决方案。我们需要使用
rlang
中的两个表达式,并通过
执行此代码

dat %>% dplyr::arrange(!!rlang::parse_expr(sortOrder[1]),
                       !!rlang::parse_expr(sortOrder[2]))
编辑1 这将解决您的问题:

dplyr::arrange(!!!rlang::parse_exprs(sortOrder))

查找。

谢谢。分拣机的长度可能会有所不同。所以我不能真的依赖魔法数字是的,就是这样。谢谢
dplyr::arrange(!!!rlang::parse_exprs(sortOrder))