在DT :: datatable()中显示Inf

时间:2018-02-03 00:44:42

标签: r datatable shiny dt

我想明确地在数据表()中显示ASPECTJ值而不是空白

Inf

enter image description here

我不想将列信息字符转换为能够对列进行排序(如果我这样做,排序将按字母顺序排列)

任何想法?

此致

编辑:

我认为可以适应这种代码:

iris[1,1]<-Inf
DT::datatable(iris[1:2,])

使用@MLavoie解决方案,它并不是datatable(iris[c(1:20), ], options = list(columnDefs = list(list( targets = 5, render = JS( "function(data, type, row, meta) {", "return type === 'display' && data.length > 2 ?", "'<span title=\"' + data + '\">' + data.substr(0, 2) + '...</span>' : data;", "}") )))) NA

Inf

2 个答案:

答案 0 :(得分:2)

你可以这样做:

df = iris
df[1,1]<-Inf
datatable(df[1:2,], options = list(columnDefs = list(list(
    targets = 1,
    render = JS(
        "function(data, type, row, meta) {",
        "return data === null ? 'Inf' : data;",
        "}")
))))

你也可以手动完成:

DT::datatable(df[1:2,], editable = TRUE)

答案 1 :(得分:1)

解决方案是:

options(htmlwidgets.TOJSON_ARGS = list(na = 'string'))

iris[1,1] <- NA
iris[2,1] <- Inf
DT::datatable(head(iris))

感谢@ yihui-xie和@Jeroen:https://github.com/rstudio/DT/issues/496#issuecomment-363867449