r - dplyr-使用变量名在多个列上分组

标签 r group-by shiny dplyr

我正在与R Shiny合作进行一些探索性数据分析。我有两个复选框输入,它们仅包含用户选择的选项。第一个复选框输入仅包含分类变量。第二个复选框仅包含数字变量。接下来,我对这两个选择应用groupby:

var1 <- input$variable1      # Checkbox with categorical variables
var2 <- input$variable2      # Checkbox with numerical variables

v$data <- dataset %>%
  group_by_(var1) %>%
  summarize_(Sum = interp(~sum(x), x = as.name(var2))) %>%
  arrange(desc(Sum))

当仅选择一个类别变量时,此groupby可以完美工作。当多个分类变量被选择,这groupby返回与列名的数组。如何将列名称数组传递给dplyrgroupby

最佳答案

如果您有一个由变量名组成的 vector ,则应将它们传递给.dots=group_by_参数。例如:

mtcars %>% 
   group_by_(.dots=c("mpg","hp","wt")) %>% 
   summarize(x=mean(gear))

关于r - dplyr-使用变量名在多个列上分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34487641/

相关文章:

css - 在 Material 视差中更改图像的高度

r - 项目列表中的字符串匹配

r - stat_smooth gam 与 gam {mgcv} 不同

r - Data.frame 使用来自另一个 data.frame(如 Excel "criteria table")的条件转换数据

r - 如何连续输入重复值

mysql - 组合 MySQL 查询会产生错误的答案

mysql - 在具有多个连接的 SQL 中按商品选择最低价格

mysql - 针对特定极慢查询的优化

r - 带有 R 传单的自定义图例 - 相同情节图例中的圆形和正方形

r - Shiny 的模块 : Pass values from renderUI (in server function) to another module's server function