闪亮的应用程序创建 - 将结果传递给表;不允许从 Shiny 读取对象
Posted
技术标签:
【中文标题】闪亮的应用程序创建 - 将结果传递给表;不允许从 Shiny 读取对象【英文标题】:Shiny App creation - Passing result to table; reading objects from Shiny not allowed 【发布时间】:2017-01-27 09:16:01 【问题描述】:我对闪亮的应用程序比较陌生,并尝试创建一些基本的决策规则,这些规则将根据定义的规则输出分类方案。我的平台和 R 版本是:
平台:x86_64_w64_mingw32 R版本:3.2.1(2015_06_18)
我收到以下错误:$.shinyoutput 中的错误:在尝试测试 Fall LNF 分数
ui<-(fluidPage(titlePanel("testapp"),
sliderInput(inputId="fluency1", label="Fall FSF",value=25,min=0,max=200),
sliderInput(inputId="fluency2", label="Fall LNF",value=25,min=0,max=200),
mainPanel(h5("Groupings"),
textOutput("stuff"))))
server<-function(input,output) observe(
#PROFILE 1
if ( (input$fluency2<20.5))
#print("Profile 1")
a<-renderPrint(output$stuff("Profile 1"))
a()
if( (input$fluency1<12) & ((input$fluency2>20)) & (input$fluency2<23))
print("Profile 1")
if( (input$fluency1<9) & ((input$fluency2>21)) & (input$fluency2<25))
print("Profile 1")
#PROFILE 2
if ( (input$fluency1>11))
print("Profile 2")
if( ((input$fluency1>8) & (input$fluency1<28)) & ((input$fluency2>22) & (input$fluency2<25)))
print("Profile 2")
if( (input$fluency1<28) & ((input$fluency2>24)))
print("Profile 2")
#PROFILE 3
if( (input$fluency1>27) & ((input$fluency2>23)))
print("Profile 3")
)
shinyApp(server=server,ui=ui)
【问题讨论】:
【参考方案1】:这有帮助吗?
ui<-(fluidPage(titlePanel("testapp"),
sliderInput(inputId="fluency1", label="Fall FSF",value=25,min=0,max=200),
sliderInput(inputId="fluency2", label="Fall LNF",value=25,min=0,max=200),
mainPanel(h5("Groupings"),
textOutput("stuff"))))
server<-function(input,output)
profile <- reactive(
if ( (input$fluency2<20.5))
tmp <- "Profile 1"
if( (input$fluency1<12) & ((input$fluency2>20)) & (input$fluency2<23))
tmp <- "Profile 1"
if( (input$fluency1<9) & ((input$fluency2>21)) & (input$fluency2<25))
tmp <- "Profile 1"
#PROFILE 2
if ( (input$fluency1>11))
tmp <- "Profile 2"
if( ((input$fluency1>8) & (input$fluency1<28)) & ((input$fluency2>22) & (input$fluency2<25)))
tmp <- "Profile 2"
if( (input$fluency1<28) & ((input$fluency2>24)))
tmp <- "Profile 2"
#PROFILE 3
if( (input$fluency1>27) & ((input$fluency2>23)))
tmp <- "Profile 3"
tmp
)
output$stuff <- renderText(
profile()
)
shinyApp(server=server,ui=ui)
【讨论】:
以上是关于闪亮的应用程序创建 - 将结果传递给表;不允许从 Shiny 读取对象的主要内容,如果未能解决你的问题,请参考以下文章
在闪亮的应用程序中从 UI 中选择数据后,如何将值(选择)传递给 selectizeInput()?