R 需要知道如何将数字列格式化为12位,并将其转换为xxxx\U xxxx\U xxxx格式

R 需要知道如何将数字列格式化为12位,并将其转换为xxxx\U xxxx\U xxxx格式,r,R,使用R时,需要知道如何将列格式化为12位数字,以及如何将其格式化为xxxx_xxxx_xxxx #install.packages("tidyr") #install.packages("readxl") library(tidyr) library(readxl) projectToL4Raw <- read.csv("project_pro.csv") projectToL4Raw projectToL4RawSeparator <- separate(projectToL4R

使用R时,需要知道如何将列格式化为12位数字,以及如何将其格式化为xxxx_xxxx_xxxx

#install.packages("tidyr")
#install.packages("readxl")
library(tidyr)
library(readxl)

projectToL4Raw <- read.csv("project_pro.csv")
projectToL4Raw
projectToL4RawSeparator <- separate(projectToL4Raw, ALLOCATION_CBD, c("CBD", "Cost Center"), sep = ":")

write.csv(projectToL4RawSeparator, file = "my_data.csv")
#安装程序包(“tidyr”)
#install.packages(“readxl”)
图书馆(tidyr)
图书馆(readxl)
projectToL4Raw给定

鉴于:


如何处理12位字符串,例如
x-“123456789123”
?这是一个好问题。期望的输出是什么?但不要认为这与OP有关,因为他们编写时需要“将列格式化为12位”。输出必须是
x
本身,即
123456789123
。我想,如果OP想要将一个列格式化为12个数字,则应该考虑到该列的字符串小于或等于12个数字。目的是使专栏内容更为一致谢谢你的回复。在对我的数据执行代码时,我收到警告消息作为警告消息:格式为C(x=as.numeric(projectTol4rawseporter$CBD),宽度为12,:强制引入的NAs请告诉我是否缺少某些内容
x <- '10021502'
formatC(
  x = as.integer(x),
  width = 12,        # total width
  flag = "0",        # pads zeros at beginning
  big.mark = "_",    # mark between every big.interval before the decimal point
  big.interval = 4   # see above
)
# [1] "0000_1002_1502"
x <- '10021502'
gsub("([0-9]{4})([0-9]{4})", "0000_\\1_\\2", x)