在Shiny中引用具有被动输入变量的列

时间:2015-03-17 21:55:54

标签: r user-input shiny

尝试使用输入变量值来引用"结果"中的指示列。在Shiny中使用lm函数的数据框。我已经在控制台中对此进行了测试,但它运行正常但不是我实际运行应用程序时。

我不认为所有代码都是必要的(但如果需要,我会很乐意包含更多代码)所以这里是来自server.r的重要部分:

compareVar2 <- reactive({
    if(input$compareVar2 == 'first'){
        return (results$firstPostScore)
    }else if(input$compareVar2 == 'last'){
        return (results$lastPostScore)
    }else if(input$compareVar2 == 'avg'){
        return (results$avgPostScore)
    }else {return (results$avgPostScore)} #just as a fall-back default

output$analysis <- renderPrint({
    analysis <- lm(preScore ~ compareVar2, data = results)
    return (summary(analysis))
})

我收到以下错误消息:
model.frame.default出错(formula = preScore~compareVar2,data = results,:   变量&lt; compareVar2&#39;

的无效类型(闭包)

我似乎无法在任何地方找到任何具体内容: - /

谢谢!

1 个答案:

答案 0 :(得分:1)

compareVar2是一个函数,因此您应将其称为compareVar2():

analysis <- lm(preScore ~ compareVar2(), data = results)