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)]