Использовать пользовательский ввод для заполнения следующего выпадающего списка

У меня есть датафрейм, который мне нужно дважды установить для выполнения вычислений.

cat1 <- c('blue', 'red', 'green', 'blue')
cat2 <- c('bus', 'plane', 'car', 'boat')
num1 <- c(123, 153, 642, 333)

df <- data.frame(cat1, cat2, num1)

Мне нужно иметь возможность выбрать (например, "синий") из категории 1, чтобы просмотреть следующее раскрывающееся меню, в котором будут показаны только те значения в категории 2, которые связаны с выбором "синий". Как бы я пошел для достижения этой цели?

Учитывая приведенный выше фрейм данных, вот мой код ur.R и server.R:

ui.R

library(shiny)
library(shinydashboard)
library(shinyjs)
library(htmltools)
library(DT)

dashboardPage(
    # Dashboard Header
  dashboardHeader(
    title = "Header"
    ),

  # Dashboard Sidebar    
    selectInput(
      'cat1_select', 'Select Vertical', choices = df$cat1
    ),

    ### I need another selectInput function to go here, but unsure
    ### of how to call the newly subsetted data from the reactive 
    ### function to display cat2

    ),

  # Dashboard Body
  dashboardBody()
)

server.R

library(shiny)

# Define server logic required to draw a histogram
shinyServer(function(input, output) {

  # subset based on initial input from Vertical selection
  color_info <- reactive({input$cat1_select})

  output$new_df <- subset(df, cat1 == color_info()) # feel like this is wrong....

  })
})

0 ответов

Другие вопросы по тегам