Подстановка фрейма данных с несколькими знаками доллара в Shiny в R

#r #plot #ggplot2 #shiny #shiny-server

#r #построение #ggplot2 #блестящий #shiny-сервер

Вопрос:

 output$boxPlot <- renderPlot({
    boxplot(input$fileSelect$input$cateSelect, main = "Box plot", ylab = "KJ")
  })
  

Я создаю интерфейс, в котором пользователь может выбрать, какой файл и какой столбец данных они хотят отобразить. Я использовал условие if для решения этой проблемы, но есть ли лучший способ решить эту проблему?

Комментарии:

1. Какова фактическая структура input$fileSelect ? Насколько я знаю, нет ввода, который напрямую возвращает data.frame. Было бы очень полезно, если бы вы включили воспроизводимый пример.

2. Эти примеры должны помочь: shiny.rstudio.com/gallery/kmeans-example.html , shiny.rstudio.com/gallery/widgets.html

Ответ №1:

Вы имеете в виду что-то вроде этого? (предполагается, что input$fileSelect это объект данных и input$cateSelect является символом)

 input$fileSelect[[input$cateSelect]]
  

Комментарии:

1. Привет, Nilsole, у меня есть два входа, один из которых назван как fileSelect для файла фрейма данных, а другой назван как cateSelect (имя столбца хранится в «символах»). Я пробовал ваш путь, но «нижний индекс выходит за рамки» — это сообщение об ошибке. Большое спасибо за ваше решение.

2. Ну, идея состоит в том, чтобы обрабатывать все входные данные отдельно. input$cateSelect отличается от input$fileSelect , поэтому вы не можете и не должны объединять их знаками доллара. Не имея дополнительной информации о вашем приложении, я не могу дать вам больше советов.