背景
由于Renjin 中的错误,该format
函数族不可用,但sprintf
可以工作。
代码
这是一个将数字转换为逗号分隔字符串的替换函数:
commas <- function( n ) {
s <- sprintf( "%03.0f", n %% 1000 )
n <- n %/% 1000
while( n > 0 ) {
s <- concat( sprintf( "%03.0f", n %% 1000 ), ',', s )
n <- n %/% 1000
}
gsub( '^0*', '', s )
}
问题
在代码完成工作的同时,如何加快实现速度?也就是说,如何编写代码以使用 R 白话(不使用format
, formatC
,prettyNum
等)并且不损坏Renjin 包(即不依赖)?