如何关闭 R 中的字符?
How to cast closure to character in R?
我想通过用户输入保存数据。
我将使用 sprintf
。
下面是我的代码。
ui.r
selectInput(
"ModelCB", 'Model', choices=NULL, selected = NULL, multiple = FALSE
)
server.r
shinyServer(function(input, output, session)
{
output$SelectModel <- renderText({
paste("You have selected", input$ModelCB)
GetModel <- input$ModelCB
})
TargetModelQuery <- sprintf("SELECT tb_result.mid
FROM tb_result
WHERE name='%s' and result='F'", GetModel)
})
我无法使用GetModel
。
TargetModelQuery
有错误。
我如何使用 GetModel
?
您需要使 TargetModelQuery
具有反应性,例如,
TargetModelQuery <- reactive({
sprintf("SELECT tb_result.mid
FROM tb_result
WHERE name='%s' and result='F'", input$ModelCB)
})
并通过调用 TargetModelQuery()
.
访问字符串
完整示例
library(shiny)
shinyApp(
shinyUI(
fluidPage(
selectInput(
"ModelCB", 'Model', choices=c("a","b","c"), selected = NULL, multiple = FALSE
),
textOutput("printStr")
)
),
shinyServer(function(input, output, session) {
TargetModelQuery <- reactive({
sprintf("SELECT tb_result.mid
FROM tb_result
WHERE name='%s' and result='F'", input$ModelCB)
})
output$printStr <- renderText({
TargetModelQuery()
})
})
)
我想通过用户输入保存数据。
我将使用 sprintf
。
下面是我的代码。
ui.r
selectInput(
"ModelCB", 'Model', choices=NULL, selected = NULL, multiple = FALSE
)
server.r
shinyServer(function(input, output, session)
{
output$SelectModel <- renderText({
paste("You have selected", input$ModelCB)
GetModel <- input$ModelCB
})
TargetModelQuery <- sprintf("SELECT tb_result.mid
FROM tb_result
WHERE name='%s' and result='F'", GetModel)
})
我无法使用GetModel
。
TargetModelQuery
有错误。
我如何使用 GetModel
?
您需要使 TargetModelQuery
具有反应性,例如,
TargetModelQuery <- reactive({
sprintf("SELECT tb_result.mid
FROM tb_result
WHERE name='%s' and result='F'", input$ModelCB)
})
并通过调用 TargetModelQuery()
.
完整示例
library(shiny)
shinyApp(
shinyUI(
fluidPage(
selectInput(
"ModelCB", 'Model', choices=c("a","b","c"), selected = NULL, multiple = FALSE
),
textOutput("printStr")
)
),
shinyServer(function(input, output, session) {
TargetModelQuery <- reactive({
sprintf("SELECT tb_result.mid
FROM tb_result
WHERE name='%s' and result='F'", input$ModelCB)
})
output$printStr <- renderText({
TargetModelQuery()
})
})
)