Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
附加到dataframe的末尾,并在应用程序中显示为表_R_Shiny - Fatal编程技术网

附加到dataframe的末尾,并在应用程序中显示为表

附加到dataframe的末尾,并在应用程序中显示为表,r,shiny,R,Shiny,我正在尝试创建一个非常简单的应用程序,用户可以输入一个文本字段和一个数字,并将其附加到数据框中,然后数据框显示为一个表。 我99%是这样做的,但唯一的问题是新条目会覆盖旧条目,因此您只能在数据框中获得一行,在显示的表中获得一行 以下是一个可复制的示例: library(shiny) library(DT) shinyApp( ui = navbarPage("Making a dataframe and displaying it",

我正在尝试创建一个非常简单的应用程序,用户可以输入一个文本字段和一个数字,并将其附加到数据框中,然后数据框显示为一个表。 我99%是这样做的,但唯一的问题是新条目会覆盖旧条目,因此您只能在数据框中获得一行,在显示的表中获得一行

以下是一个可复制的示例:


library(shiny)
library(DT)

shinyApp(
    ui = navbarPage("Making a dataframe and displaying it",
                    tabPanel("Input",
                             
                             mainPanel(
                                 textInput("text", "Text input", ""),
                                 numericInput("number", "Numeric input", min=1, value = 1),
                                 actionButton("submit", "Submit")
                             )
                             
                    ),
                    tabPanel("The list",
                             DT::dataTableOutput("thelist")
                    )
    ),
    
    server = function(input, output) {
        
        initial <- data.frame("text" = character(), "number" = numeric())
        
        thelist <- eventReactive(input$submit,{rbind(initial,
                             data.frame("text" = input$text, "number" = input$number))
        })
        
        output$thelist = renderDataTable(thelist())
        
    }
)


图书馆(闪亮)
图书馆(DT)
shinyApp(
ui=navbarPage(“制作数据帧并显示它”,
选项卡面板(“输入”,
主面板(
文本输入(“文本”、“文本输入”、“文本输入”),
数字输入(“数字”,“数字输入”,最小值=1,值=1),
操作按钮(“提交”、“提交”)
)
),
tabPanel(“列表”,
DT::dataTableOutput(“列表”)
)
),
服务器=功能(输入、输出){

初始您可以将数据帧放入
reactiveValues
中,并使用
observeEvent
单击添加新行

library(shiny)
library(DT)

shinyApp(
  ui = navbarPage("Making a dataframe and displaying it",
                  tabPanel("Input",
                           mainPanel(
                             textInput("text", "Text input", ""),
                             numericInput("number", "Numeric input", min=1, value = 1),
                             actionButton("submit", "Submit")
                           )
                           
                  ),
                  tabPanel("The list",
                           DT::dataTableOutput("thelist")
                  )
  ),
  
  server = function(input, output) {
    
    rv <- reactiveValues(data = data.frame(text = character(), number = numeric()))
    
    observeEvent(input$submit,{
      rv$data <- rbind(rv$data, data.frame(text = input$text, number = input$number))
    })
    
    output$thelist = renderDataTable({
      rv$data
      })
    
  }
)
库(闪亮)
图书馆(DT)
shinyApp(
ui=navbarPage(“制作数据帧并显示它”,
选项卡面板(“输入”,
主面板(
文本输入(“文本”、“文本输入”、“文本输入”),
数字输入(“数字”,“数字输入”,最小值=1,值=1),
操作按钮(“提交”、“提交”)
)
),
tabPanel(“列表”,
DT::dataTableOutput(“列表”)
)
),
服务器=功能(输入、输出){

rv完美,谢谢。很抱歉,我可能一年只做一次闪亮的应用程序,而且我总是很难把我的头脑集中在反应性上!非常感谢。