在R中的小数位前添加零

Posted

技术标签:

【中文标题】在R中的小数位前添加零【英文标题】:adding zeroes before decimal place in R 【发布时间】:2015-07-21 00:38:02 【问题描述】:

我已使用 formatC 在需要时添加前导零,但我目前正在处理需要添加尾随零且不带小数点的人口普查区域。我已经阅读了这些选项,但看不到 formatC 将零放在末尾而不使它们成为小数位的方式?任何想法都非常感谢。

tract<-c(1,11,101,1001,10001,100001)
formatC(tract,width=6,format="d",flag="0") 

【问题讨论】:

Pad with leading zeros to common width的可能重复 gsub("\\s","0",formatC(tract,format="f",flag="-",digits=0,width=6)) 是我在使用 formatC 时能做到的最好的。 【参考方案1】:

您可以使用 stringr 包中的 str_pad 添加尾随零:

library(stringr)
str_pad(tract, 6, "right", "0")
# [1] "100000" "110000" "101000" "100100" "100010" "100001"

【讨论】:

【参考方案2】:

stringi:

library(stringi)
stri_pad_right(tract, 6, "0")

【讨论】:

以上是关于在R中的小数位前添加零的主要内容,如果未能解决你的问题,请参考以下文章

格式化R中的小数位

小数末尾的零能去掉吗?为啥?

as.numeric() 删除 R 中的小数位,如何更改?

控制R中打印输出中的小数位数

不能将小数舍入到R中的两位小数

如何为 R Shiny 中的列设置小数宽度?