我有以下数据
GT-BU7867-09 GT-BU6523-113 GT-BU6452-1 GT-BU8921-12
如何使用R在连字符后面的数字填充前导零,以便它有三位数?生成的格式应如下所示:
GT-BU7867-009 GT-BU6523-113 GT-BU6452-001 GT-BU8921-012
基础解决方案
sapply(strsplit(x,"-"),function(x) paste(x[1],x[2],sprintf("%03d",as.numeric(x[3])),sep="-") )
结果:
[1] "GT-BU7867-009" "GT-BU6523-113" "GT-BU6452-001" "GT-BU8921-012"