对于存储为字符串的数字,R datatable列的自定义排序

对于存储为字符串的数字,R datatable列的自定义排序,r,shiny,shinydashboard,R,Shiny,Shinydashboard,我有一个闪亮的仪表板,在其中我使用DataTable包(代码严格遵循中的方法)来构建我的表 一切正常,但出于美观考虑,我想用逗号分隔符显示数字,因此呈现1000000 到目前为止,我的方法是使用以下格式重新格式化数字列: table$col <- formatC(table$col, format="d", big.mark=',') 表$col第4.5节-本DT文件的行呈现有您的答案: 当我需要通过DT(DataTable)包格式化数值时,我使用formatCurrency,并确保使用

我有一个闪亮的仪表板,在其中我使用DataTable包(代码严格遵循中的方法)来构建我的表

一切正常,但出于美观考虑,我想用逗号分隔符显示数字,因此呈现
1000000

到目前为止,我的方法是使用以下格式重新格式化数字列:

table$col <- formatC(table$col, format="d", big.mark=',')

表$col第4.5节-本DT文件的行呈现有您的答案:

当我需要通过DT(DataTable)包格式化数值时,我使用
formatCurrency
,并确保使用空字符串指定
currency
参数。从那里,可以使用
数字
标记
等参数调整输出

下面是此功能的一个示例:

library(dplyr)

data = data.frame(
   value1 = runif(10) * 10000,
   value2 = runif(10) * 100000,
   stringsAsFactors = F
 )

DT::datatable(data) %>%
   DT::formatCurrency(columns = "value1", currency =  "", mark = ",") %>%
   DT::formatCurrency(columns = "value2", currency =  "", mark = " ", digits = 0)

如果没有正确的代码片段,输出将是

,很难帮助您(即使您的代码与闪亮的文档“相似”)。我已经添加了一个代码片段,但我认为它不会给原始问题陈述增加太多内容。
formatCurrency
函数也可能有帮助:以及
library(dplyr)

data = data.frame(
   value1 = runif(10) * 10000,
   value2 = runif(10) * 100000,
   stringsAsFactors = F
 )

DT::datatable(data) %>%
   DT::formatCurrency(columns = "value1", currency =  "", mark = ",") %>%
   DT::formatCurrency(columns = "value2", currency =  "", mark = " ", digits = 0)