R 如何在训练模型中观察selectinput中的目标输入

R 如何在训练模型中观察selectinput中的目标输入,r,shiny,shinydashboard,shiny-reactivity,selectinput,R,Shiny,Shinydashboard,Shiny Reactivity,Selectinput,我正在尝试构建一个反应式闪亮应用程序,让最终用户上传一个csv文件,并在上传的文件上训练我的模型。上传的文件可能包含多个目标变量,我希望我可以为用户提供selectinput选项,以便模型针对选定的目标变量运行。到目前为止,我已经能够提供上传文件和读取数据以运行模型的选项。但是,我还无法确定如何根据用户输入分配目标变量。这是我在代码方面的进步 用户界面逻辑 sidebar <- dashboardSidebar( sidebarMenu( menuItem("Dashboard

我正在尝试构建一个反应式闪亮应用程序,让最终用户上传一个csv文件,并在上传的文件上训练我的模型。上传的文件可能包含多个目标变量,我希望我可以为用户提供selectinput选项,以便模型针对选定的目标变量运行。到目前为止,我已经能够提供上传文件和读取数据以运行模型的选项。但是,我还无法确定如何根据用户输入分配目标变量。这是我在代码方面的进步

用户界面逻辑

sidebar <- dashboardSidebar(
  sidebarMenu(
    menuItem("Dashboard", tabName = "dashboard", icon = icon("dashboard")),
    menuItem("Visit-us", icon = icon("send",lib='glyphicon'), 
             href = "abc.com"),
    fileInput("datafile", "Choose CSV File",
              accept = c(
                "text/csv",
                "text/comma-separated-values,text/plain",
                ".csv")),
    tags$hr(),
    checkboxInput('header', 'Header', TRUE),
    radioButtons('sep', 'Separator',
                 c(Comma=',',
                   Semicolon=';',
                   Tab='\t'),
                 ','),
    selectInput(
      "select",
      label = h3("Select Channel"),
      choices = c("Users", "New_Users"),
      selectize = TRUE,
      selected = "All")
 )
)
侧栏
server <- function(input, output, session) {
  getData <- reactive({
    inFile <- input$datafile
    if (is.null(input$datafile))
      return(NULL)
    data2<-read.csv(inFile$datapath, header=input$header, sep=input$sep, 
                    quote=input$quote)
    #save(data2, file = "dataread.RData")
    return(data2)
  })

  adstock <- function(x, rate=0){
    return(as.numeric(stats::filter(x=x, filter=rate, method="recursive")))
  }

  model <- reactive({
    raw_data <- getData()
  observeEvent(input$select,{
  target <- input$select
})
    ts <- ts(raw_data$target, frequency = 12, start=c(2016,07))
    decomposition <- decompose(ts)


    mod <- nls(target~b0+b1*adstock(variable, rate),data = raw_data,
               start=c(b0=1, b1=1, rate=0))
})
}