Data.table:使用闪亮的变量动态选择组

问题描述:

我正在尝试开发一个应用程序,允许用户选择在'by'section的data.table中使用哪些变量。Data.table:使用闪亮的变量动态选择组

Supose的mtcars数据集被加载到应用程序,在用户界面中会有一个选择像:

vector.vars <- c('am', 'gear', 'carb') 
selectInput("vars", "Select variables:", as.list(vector.vars), selected = 'am', multiple = TRUE) 

此选择输入将在UI中呈现,并且当用户在选择一些变量服务器将用于像:

output$table <- renderDataTable({ 
    d <- mtcars[, list(mpg_mean= mean(mpg), by=input$vars] 
    }) 

在这种情况下,如果用户选择了“am'and‘碳水化合物的’前述脚本应执行此操作:

d <- mtcars[, list(mpg_mean= mean(mpg), by=list(am, carb)] 

并显示每个'am'和'carb'组合的'mpg'的平均值。

...但是by =输入$ vars不能按预期工作。

任何想法,我如何能达到预期的输出, 在此先感谢!

这样做:

as.data.table(mtcars)[, .(mpg_mean = mean(mpg)), by = c(input$vars)]