Передача имен переменных в команду fre - PullRequest
0 голосов
/ 20 июня 2019

Я пытаюсь передать набор переменных на вход select и использовать их имена для команды expss::fre.

У меня есть объект с именами столбцов и его метками, такими как 'myvars' :

a1_1, "Do you like apples?"
a1_2, "Do you like oranges?"

Я использую их:

selectInput(vars, "Select variable", myvars)

Затем в разделе «сервер» я хотел бы использовать его для генерации простой таблицы частот.

output$view <- renderTable( {
        fre(input$variable)
}

Проблема в том, что в fre мне нужно передать переменную с именем набора данных:

fre(data$a1_1)

Поэтому я попытался с eval, quo, !!, paste0("data$",input$vars) и более, но не удалось.

, когда я пытаюсь с switch:

switch(input$vars, "a1_1"=fre(data$a1_1), "a1_2"=fre(data$a1_2))

Работает нормально, но мне нужно более гибкое решение.Как это сделать хорошо?

1 Ответ

1 голос
/ 21 июня 2019

Следующий код должен помочь:

output$view <- renderTable({
        fre(data[[input$vars]])
})
...