Я работал над блестящим приложением, которое хранит объект data.table::data.table
как элемент reactiveValues
.Когда я вызываю этот элемент в функции renderDataTable
и пытаюсь отформатировать некоторые столбцы как валюту, я получаю сообщение об ошибке:
"You specified the columns: PY_ROT1, but the column names of the data are"
96: stop
95: name2int
94: appendFormatter
93: formatColumns
92: formatCurrency
91: function_list[[k]]
89: freduce
88: _fseq
87: eval
86: eval
84: %>%
83: exprFunc [C:\Users\OneDrive\Documents\shiny\test3/server.R#67]
82: widgetFunc
81: func
80: origRenderFunc
79: renderFunc
78: origRenderFunc
77: output$dmatrix
1: runApp
Я попробовал несколько идей, опубликованных на этом сайте, но снет успехаБуду признателен за любую подсказку.Код выглядит так:
rv <- reactiveValues()
source("./code/dmatrix_shiny.R")
observeEvent(input$calcmat, {
withBusyIndicatorServer("calcmat", {
Sys.sleep(1)
inFile <- input$file1
if(is.null(inFile)) return(NULL)
dt <- loadWorkbook(inFile$datapath)
rv$mat <- dmatrix(dt, input$val_year) # this returns a data.table object
})
})
output$dmatrix <- renderDataTable({
datatable(rv$mat, rownames = F, filter = list(position = 'top',
clear = T, plain = T), style = 'bootstrap') %>% formatCurrency("PY_ROT1")
})
Заранее спасибо,
Christian