Получите доступ ко всем значениям ячеек таблицы, открыв входной селектор $ xxx_ <something>(без необходимости использовать входной $ xxx_cell_click / select) - PullRequest
1 голос
/ 03 мая 2019

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

Я хотел бы иметь возможность:

  • после того, как пользователь отредактирует некоторые ячейки и затем нажмет кнопку обновления,
  • для захвата всех значений во всех ячейках этого недавно отредактированного объекта данных (который был отредактирован на стороне клиента) и возврата его в R, скажем, в виде матрицы

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

Вот пример блестящего приложения, которое может реализовать это:

library(DT)
library(shiny)


ui <- function(input, output, session) {

    fluidPage(
        textOutput('edit'),
        DTOutput('test'),
        actionButton('actbut', label = 'click')
    )
}

server <- function(input, output, session) {

    rv <- reactiveValues( df = iris )

    output[['test']] <- renderDT({
        datatable(rv$df, editable = T)
    }, server = F)

    observeEvent(input$actbut, {
        # -- Suppose the user manually changes 
        # --all entries in df in the 
        # --Species column to "setosa", clientside.

        # -- I would like to be able to access the newly changed entries
        # -- using some attribute of input$test_<something>; 
        # -- in the same vein of input$test_cell_clicked, etc.
    })

}

shinyApp(ui = ui, server = server, options = list(port = 5858))

Если уже есть простой способЧтобы сделать это, пожалуйста, дайте мне знать.

Спасибо Yihui Xie за невероятную библиотеку.

1 Ответ

0 голосов
/ 04 мая 2019

Похоже, что не существует стабильного / надежного решения в соответствии с: R блестящие данные с числовым входом и реактивной колонкой

Переход на использование пакета rhandsontable на данный момент. Может подать это как запрос функции на DT github.

...