Получение искаженного вывода в Shiny - PullRequest
0 голосов
/ 06 декабря 2018

есть файл данных, который я прочитал в своей функции сервера Shiny.Я хотел бы отобразить таблицу частот двух столбцов, которые пользователь выбирает с помощью раскрывающихся списков.Я получаю сообщение об ошибке «Таблица экстента 0».Я посмотрел на ошибку R - таблица экстента 0 и не могу решить проблему с таблицей, но я правильно импортировал свои данные и имена столбцов также совпадают.Та же строка кода работает, когда я запускаю ее в консоли.

Вот мой код:

shinyServer(function(input, output) {
  output$courseData = renderTable( {


    data = read.csv(file = 'FourCourseTableLetterGrades_POLISHED.tsv', sep = '\t', header = TRUE)
    c1 = input$course1
    c2 = input$course2
    tbl = table(data[[c1]], data[[c2]])
    tbl

 }

)
}

)

Вот как выглядит вывод:

screenshot

Мне бы хотелось, чтобы он был похож на вывод, который вы получаете при запуске того же кода в консоли.Вот так:

enter image description here

Что не так с моим кодом?Кроме того, я не знаю, откуда взялись имена Var1, Var2 и Freq и где я должен их изменить.

1 Ответ

0 голосов
/ 06 декабря 2018

renderTable изменит любые входные данные на фрейм данных перед отправкой их в пользовательский интерфейс, поэтому вы получите что-то вроде data.frame(table(mtcars$cyl, mtcars$gear)).Мы можем попробовать

output$courseData = renderTable(rownames=TRUE, {
data = mtcars
c1 = input$course1
c2 = input$course2
tbl = as.data.frame.matrix(table(data[[c1]], data[[c2]]))
tbl})
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...