nntrn
12/7/2018 - 9:08 AM

[prepending 0] add leading zeros #r

[prepending 0] add leading zeros #r

# formatC()
# -----------------------------
# the important points are the width argument, 
# format being "d" for "integer", and a "0" flag for prepending zero

formatC(anim, width = 6, format = "d", flag = "0")
## [1] "025499" "025500" "025501" "025502" "025503" "025504"

formatC(x, width = 8, format = "d", flag = "0")
## [1] "00000001" "00000010" "00000100" "00001000" "00010000" "00100000"


# sprintf()
# -----------------------------
# The main advantage of sprintf is that you can embed 
# formatted numbers inside longer bits of text.

sprintf("%06d", anim)
## [1] "025499" "025500" "025501" "025502" "025503" "025504"

sprintf("%08d", x)
## [1] "00000001" "00000010" "00000100" "00001000" "00010000" "00100000"

sprintf(
  "Animal ID %06d was a %s.", 
  anim, 
  sample(c("lion", "tiger"), length(anim), replace = TRUE)
)

## [1] "Animal ID 025499 was a tiger." "Animal ID 025500 was a tiger."
## [3] "Animal ID 025501 was a lion."  "Animal ID 025502 was a tiger."
## [5] "Animal ID 025503 was a tiger." "Animal ID 025504 was a lion." 


# https://stackoverflow.com/a/5816779