跟进“为Shiny中的反应表添加值”

时间:2014-04-24 23:49:36

标签: r dataframe shiny

跟随线程"在Shiny"中为反应表添加值作者:alexwhan:

有没有办法避免打印第一个空行?

我尝试将values$df修改为values$df(-(1:1),),但这会打印表格中第一行的索引" 2"。

谢谢!

1 个答案:

答案 0 :(得分:0)

我的解决方案是不创建第一行,而是创建一个空行的data.frame。另外,使用索引而不是rbind()

似乎也更好
library(shiny)

runApp(list(
  ui=pageWithSidebar(headerPanel("Adding entries to table"),
                     sidebarPanel(textInput("text1", "Column 1"),
                                  textInput("text2", "Column 2"),
                                  actionButton("update", "Update Table")),
                     mainPanel(tableOutput("table1"))),
  server=function(input, output, session) {
    values <- reactiveValues()
    #Create 0 row data.frame
    values$df <- data.frame(Column1 = numeric(0), Column2 = numeric(0))
    newEntry <- observe({
      if(input$update > 0) {
        isolate(values$df[nrow(values$df) + 1,] <- c(input$text1, input$text2))
      }
    })
    output$table1 <- renderTable({values$df})
  }))