自定义 DataTables 如何在 Shiny 中显示缺失值

DHW*_*DHW 5 r datatables missing-data shiny dt

DataTables, 在 Shiny 中,将缺失值显示为空格。有没有办法改变它?我特别梦想RStudio 在其数据查看器中使用的灰色斜体NA。出于显示目的将此类字符串注入字符列我没有问题,但是,当然,有时列是数字或日期,将它们转换为仅用于显示似乎有问题。

DT默认缺失值的MWE显示:

library(DT)
library(shiny)

ui <- fluidPage(
    dataTableOutput("airquality")
)

server <- function(input, output) {
    output$airquality <- renderDataTable(airquality)
}

shinyApp(ui = ui, server = server)
Run Code Online (Sandbox Code Playgroud)

default_dt_display

Sté*_*ent 8

你可以做:

library(DT)

rowCallback <- c(
    "function(row, data){",
    "  for(var i=0; i<data.length; i++){",
    "    if(data[i] === null){",
    "      $('td:eq('+i+')', row).html('NA')",
    "        .css({'color': 'rgb(151,151,151)', 'font-style': 'italic'});",
    "    }",
    "  }",
    "}"  
  )

datatable(airquality, options = list(rowCallback = JS(rowCallback)))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述