Ошибка фильтрации образца в Shiny - PullRequest
0 голосов
/ 03 июня 2018

. У меня есть датафрейм, состоящий из 100 сэмплов.Есть три столбца, одна ссылка URL, второе имя или заголовок ссылки URL и третья дата.Я хочу отобразить все эти заголовки в блестящем интерфейсе.Нажатие ведет пользователя на соответствующую страницу ссылки.Фильтровать образцы по выбранной дате.Но я получаю ошибку

Ошибка в UseMethod: для объекта класса "c ('datatables', 'htmlwidget')" не применяется применимый метод 'filter_'. Пожалуйста, помогите

Ниже приведен код

    df$link <- paste0("<a href='", df$url, "' target='_blank'>", df$heading, "</a>")

ui <- fluidPage( dateRangeInput('dateRange',
                                label = 'Filter news by date',
                                start = as.Date('2001-01-01') , end = as.Date('2018-06-01')),
  DT::dataTableOutput("table")
   )

server <- function(input, output) {

  output$table <- DT::renderDataTable({
    DT::datatable(df[, c("link", "Date"), drop = FALSE], escape = FALSE) %>%
     dplyr::filter(df$Date >= input$dateRange[1] & df$Date <= input$dateRange[2])
  })

}

1 Ответ

0 голосов
/ 03 июня 2018

Вы передаете результат от DT::datable до filter, который не является объектом, подобным фрейму данных.

Возможно, вы захотите применить filter к фрейму данных и затем передать результатдо datatable как это:

server <- function(input, output) {
  output$table <- DT::renderDataTable({
    DT::datatable(
      df[, c("link", "Date"), drop = FALSE] %>%
        dplyr::filter(df$Date >= input$dateRange[1] & df$Date <= input$dateRange[2]),
      escape = FALSE
    )
  })
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...