在 R 中的字符和数字混合列名称中添加前导零

问题描述 投票:0回答:1

我有一个数据框,其中包含一些列名称,例如; “Sample_ID”、“Time00”、“X7236Nr1”、“Y844Nr1856”、“X9834Nr21”、“S844Nr567”

我想在“Nr”后面的数字上添加前导零,这样我就可以将其全部转换为4位数字; "Sample_ID"、"Time00"、"X7236Nr0001"、"Y844Nr1856"、"X9834Nr0021"、"S844Nr0567"

我尝试使用 rename_at 选择列并应用适当的函数,例如 sprintf,

df%>% rename_at(vars(starts_with("[A-B][0-9]")), ~ 函数)

但无法构建正确的功能。您能建议任何处理这种混合字符串的方法吗?

提前致谢

r
1个回答
0
投票

您可以通过使用

str_replace_all
str_match
来查找“Nr”+ 数字,并将该数字转换为带零的 4 位数字。
str_pad()

	
© www.soinside.com 2019 - 2024. All rights reserved.