我正在使用“ data.table”包,并尝试使用该包的格式打印功能。 我想将一些列显示为货币,将某些列显示为百分比, 但是在指定表列名称时出现错误。 我的数据:
str(dt):
尝试申请时:
dt %>% formatCurrency(c('A','E'))
“ name2int(名称,名称,行名)错误:您指定了 列:A,E,但数据的列名是“
编辑:可以通过以下方式重新创建此问题:
tmp = data.table('A' = rep(1:10),'B' = rep(11:20))
tmp %>% formatPercentage(c('A','B'),2)
答案 0 :(得分:1)
您似乎在混用包... formatPercentage()
来自DT
,用data.table
制作数据,然后使用%>%
中的dplyr
< / p>
为什么不在tidyverse
/ dplyr
的保护下进行所有操作?
library(tidyverse)
tmp <- data.frame(A = rep(1:10), B = rep(11:20))
tmp %>% mutate(A = scales::percent(A), B = scales::dollar(B))
您可以使用dollar()
更改dollar_format()
的货币