2017-01-25 20 views
0

Я новичок в выяснении реактивности в блестящей форме. Я хочу использовать selectInput для выбора имени строки и отображения таблицы только этой строки, а затем нескольких столбцов.Выберите строку для отображения в таблице данных Shiny с selectInput

Например, если мои строки являются людьми («Анна», «Тим», «Ларри»), а мои столбцы являются переменными («A», «B», «C»), я хочу, чтобы selectInput отображал " 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]}) 
} 

Я уверен, что это моя функциональность сервера, которая испортилась, но все советы полезны! Благодаря!

+0

mydataset [mydataset, вход $ имя], кажется, проблема. Возможно, вы имеете в виду mydataset [input $ name,]? Во всяком случае, воспроизводимый пример всегда полезен, если вы ищете помощь. – BigDataScientist

ответ

0

Смотрите мой комментарий:

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) 
+1

Действительно полезно! Спасибо! – tika

 Смежные вопросы

  • Нет связанных вопросов^_^