对于存储为字符串的数字,R datatable列的自定义排序
我有一个闪亮的仪表板,在其中我使用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,并确保使用
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)