【发布时间】:2020-09-16 21:57:56
【问题描述】:
每次用户选择不同的日期范围、要显示的小数位数或通用变量与所有变量集时,我都需要一个数据表来更新。下面的代码有效,但我认为它不“正确”。我需要代码响应的三个变量(input$descr_daterange、input$descr_radio 和 input$descr_decimals)位于 renderDataTable 函数中。这似乎不是正确的做法。
observeEvent(input$descr_daterange, {
descr_date_inds <- reactiveValues()
descr_date_inds$begin_ind <- min(which(substr(inputData$qcdata$LDT,1,10) == input$descr_daterange[1]))
descr_date_inds$end_ind <- max(which(substr(inputData$qcdata$LDT,1,10) == input$descr_daterange[2]))
output$data_descr <- renderDataTable({
description <- descr(inputData$qcdata[descr_date_inds$begin_ind:descr_date_inds$end_ind,],transpose = TRUE, stats = input$descr_radio)
description <- description[-which(row.names(description) == 'RecNum'),]
if ('N.Valid' %in% colnames(description) & 'Pct.Valid' %in% colnames(description)){
description <- description[,-which(colnames(description) == 'N.Valid' | colnames(description) == 'Pct.Valid')]}
description <- round2(description[,2:ncol(description)],input$descr_decimals)
return(description)
autoWidth = TRUE
options=list(pageLength = 50)
})
})
我见过列出如下变量的代码示例:
observeEvent(c(input$descr_daterange, input$descr_decimals, input$descr_radio),
{...})
但是,我收到警告说只有列表中的第一个正在被使用。我该如何编写代码以使其正常工作?
【问题讨论】: