0

我是新来弄清楚闪亮的反应性。我想使用 selectInput 选择一行的名称,并让表格只显示该行,然后显示几列。

例如,如果我的行是人(“Anna”、“Tim”、“Larry”)并且我的列是变量(“A”、“B”、“C”),我希望 selectInput 显示“Anna”并且数据表以仅显示 Anna 的变量 A、B 和 C。

我被困在如何做到这一点上。

 ui <- shinyUI(
 fluidPage(
 fluidRow(
column(2, selectInput("name", "Select a Name:",
                      c("Anna"= "smith.anna",
                        "Tim" = "miller.tim"))),
column(6, "People Table", tableOutput("mytable")
 ))))

 server <- function(input, output) {
 output$mytable <- renderTable({
 mydataset[mydataset, input$name]})
 }

我很确定这是我的服务器功能搞砸了,但所有提示都是有帮助的!谢谢!

4

1 回答 1

1

见我的评论:

mydataset <- data.frame(A = 1:3, B = 4:6, C = 7:9)
row.names(mydataset) <- c("smith.anna", "miller.tim", "page.larry")


ui <- shinyUI(
  fluidPage(
    fluidRow(
      column(2, selectInput("name", "Select a Name:",
                            c("Anna"= "smith.anna",
                              "Tim" = "miller.tim"))),
      column(6, "People Table", tableOutput("mytable")
      ))))

server <- function(input, output) {
  output$mytable <- renderTable({
    mydataset[input$name, ]
  })
}

shinyApp(ui, server)
于 2017-01-25T15:58:39.337 回答