R 从输入值创建数据帧

R 从输入值创建数据帧,r,dataframe,shiny,R,Dataframe,Shiny,我现在开始在Shining library中创建一个应用程序,其想法是我将手动输入的值保存在数据框中(从输入中),我创建了一个应用程序(简单),但当我尝试保存手动输入的每个值时(在输入中),之前的值会被擦除。我现在拥有的代码非常基本,但关键取决于你是否可以继续使用我的应用程序。我想做的是,我通过输入输入的每个值都将保存在一个向量上,或者如果我有多个输入,每个向量都是矩阵的一列。我感谢您能帮助我: ui.R:library(shiny) shinyUI(pageWithSidebar( hea

我现在开始在Shining library中创建一个应用程序,其想法是我将手动输入的值保存在数据框中(从输入中),我创建了一个应用程序(简单),但当我尝试保存手动输入的每个值时(在输入中),之前的值会被擦除。我现在拥有的代码非常基本,但关键取决于你是否可以继续使用我的应用程序。我想做的是,我通过输入输入的每个值都将保存在一个向量上,或者如果我有多个输入,每个向量都是矩阵的一列。我感谢您能帮助我:

ui.R:library(shiny)
shinyUI(pageWithSidebar(
  headerPanel( "", ""),
  sidebarPanel(wellPanel(
      textInput('datavalues', "Valor",""),
      actionButton("submit","Guardar")
    )
  ),
  mainPanel(   
    verbatimTextOutput('datatable')
  )
))
server.R: library(shiny)
shinyServer(function(input,output,session){
  data1= reactive({
    if(input$submit!=0){
      isolate({
        data.frame(paste(input$datavalues))
      })
    }
  })
  output$datatable<-renderPrint(function(){
    if(!is.null(data1())){
      d<-data1()
      print(d)
    }
  })
})
ui.R:库(闪亮)
shinyUI(带侧栏的页面)(
头盘(“,”),
侧栏面板(井面板(
textInput('datavalues','Valor',''),
操作按钮(“提交”、“保证”)
)
),
主面板(
逐字输出('datatable')
)
))
server.R:库(闪亮)
shinyServer(功能(输入、输出、会话){
数据1=无功({
如果(输入$submit!=0){
隔离({
数据帧(粘贴(输入$datavalues))
})
}
})
输出$datatable
  • 首先,你必须了解动作按钮是如何工作的

    操作按钮(
    input$submit
    在您的例子中)初始值为0,但每次单击时它都会增加1,就像计数器一样

  • 您可以使用它向向量或数据添加值

    # For vectors
    d[input$submit] <- input$datavalues
    # For Matrix
    d[input$submit, ] <- input$datavalues
    
    向量的
    #
    d[输入$提交]