我知道所有的问题关于添加leading zero
和全面响应为他们提供诸如Q1,Q2,Q3。R:找到一个模式和编辑
但对我来说,至少根据我目前所知,我不能够解决什么,我要做的事情如下:
- 添加
leading zero
使用regex
模式匹配 所以一个string
,我想在-
之后将leading zero
仅添加到digits
。
例如:
Sam <- c("222-88", "537-457", "652-1", "787-892")
var <- LETTERS[1:4]
DF<- data.frame(Sam, var)
DF
Sam var
1 222-88 A
2 537-457 B
3 652-1 C
4 787-892 D
预期结果:
Sam var
1 222-088 A
2 537-457 B
3 652-001 C
4 787-892 D
我想:
library(stringr)
temp <- DF[str_detect(DF$Sam, "-[0-9]{1,2}$"),] # will find the rows need the leading zero
temp
Sam var
1 222-88 A
3 652-1 C
formatC(temp$Sam, width = 2,flag = 0)# not correct!
Thnk,我们能否用'stringr'或任何其他'packages'办呢?换句话说,还有其他更容易的选择吗? – Daniel
@Daniel更新为'gsubfn'方法,它使用'sprintf',以防止任何错误 – akrun