我正在创建一个闪亮的应用程序,目标是允许用户根据最多7个变量对人口数据进行分组。相关的ui代码块是:
checkboxGroupInput("groupvars",
label = h3("Variable Options"),
choices = c('Education' = 1,
'Gender' = 2,
'HH.Income'=3,
'Marital.Status'=4,
'Party.Reg' = 5,
'Race'=6,
'State'=7),
selected = c(1,2,3,4,5,6,7)),
我想要的输出是一个复选框输入,用户可以根据上述变量将总体人口分解为子组。
在服务器端,我正在努力将输入$ groupvars放入df%>%groupby(___)。我的尝试是:
server <- function(input, output){
output$local <- renderPlot(
ggplot(groups%>%
group_by(input$groupvars[1], input$groupvars[2], input$groupvars[3],
input$groupvars[4], input$groupvars[5], input$groupvars[6],
input$groupvars[7])%>%
summarise(size = sum(total),
locAgg = sum(loc),
demAgg = sum(dem))%>%
mutate(turnout = locAgg/size,
pctDem = demAgg/size),
aes(y = pctDem, x = turnout, color = input$color, size = size))+
geom_point()
)
}
问题是我的代码似乎根本就不是分组而只返回一个点的散点图。我不能真正在线提供数据样本,但请告诉我是否还有其他事情可以让问题更清楚我很乐意尝试。
希望你们中的一个可以提供帮助!提前致谢