排列功能工作不正常-dplyr

排列功能工作不正常-dplyr,r,dplyr,R,Dplyr,我将数据分组,并使用dplyr对数据进行汇总 数据[[1]]%>%group\u by(!!sym(x\u var))%>%summary(sum=sum(!!sym(y\u var)) 我将收到以下信息: Risk.Currency sum <chr> <dbl> 1 AED 0.000375 2 AUD 0.0131 3 BRL 0.00350

我将数据分组,并使用dplyr对数据进行汇总

数据[[1]]%>%group\u by(!!sym(x\u var))%>%summary(sum=sum(!!sym(y\u var))

我将收到以下信息:

 Risk.Currency       sum
  <chr>             <dbl>     
 1 AED           0.000375 
 2 AUD           0.0131   
 3 BRL           0.00350  
 4 CAD           0        
 5 CHF           0.0137   
 6 CLP           0.000461 
 7 CNY           0.00501  
 8 COP           0.000134 
 9 CZK           0.0000972
10 DKK           0.00347 
你能帮忙吗

编辑: 这里是一个mtcars的工作示例,说明了问题所在

我创建了一个空列表,因为在我的函数中有一个数据帧列表

 data <- list()
 y_var <- "hp"
 x_var <- "cyl"

 data[[1]] <- mtcars

 data[[1]] %>% group_by(!!sym(x_var)) %>% summarise(sum = sum(!!sym(y_var))) %>% arrange(desc('sum'))  
数据更新:
您必须在排列函数中使用
get

代码
sort_by%
总结(总和=总和(!!sym(y_var)))%>%
排列(获取(排序依据))%>%
安排(说明(总和))
输出:
#一个tible:3 x 2
团和
1     8  2929
2     4   909
3     6   856
数据:
data-Hi-TarJar,不幸的是这没有帮助。它只添加列.by_group,其中所有列都=TRUEOk。你能不能请
dput()
你的数据头。嗨,塔杰,>数据数据[[1]]数据[[1]]%>%group_by(!!sym(x_var))%%>%sum=sum(!!sym(y_var))%%>%arrange(desc('sum'))在这里它也不适用于mtcars。谢谢你的帮助!我对问题进行了相应的编辑。请参见我的编辑。您必须使用
get
。在定义要对其排序的变量之前,
sort_by
data[[1]]%%>%group_by(!!sym(x_var))%%>%summary(sum=sum(!!sym(y_var)))%%>%arrange(desc(sum))
工作正常吗?
 data <- list()
 y_var <- "hp"
 x_var <- "cyl"

 data[[1]] <- mtcars

 data[[1]] %>% group_by(!!sym(x_var)) %>% summarise(sum = sum(!!sym(y_var))) %>% arrange(desc('sum'))  
  sort_by <- 'sum'
  
  data[[1]] <- mtcars
  
  data[[1]] %>% 
    group_by(!!sym(x_var)) %>% 
    summarise(sum = sum(!!sym(y_var))) %>% 
    arrange(get(sort_by)) %>% 
    arrange(desc(sum))
# A tibble: 3 x 2
    cyl   sum
  <dbl> <dbl>
1     8  2929
2     4   909
3     6   856
data <- list()
  y_var <- "hp"
  x_var <- "cyl"