【发布时间】:2019-11-21 03:58:38
【问题描述】:
假设以下字符向量的数字格式不一致:
myvec <- c( '50% of population live in block 50 number 27-04',
'And 1% of population live in block 8 number 1-42',
'And 1% of population live in block 5B number 1-8',
'60% of population live in block 1641 number 17-23',
'80% of population live in block 677B number 5-3')
我希望有一个一致的数字格式,这样每个数字至少有两个数字:
c( '50% of population live in block 50 number 27-04',
'And 01% of population live in block 08 number 01-42',
'And 01% of population live in block 05B number 01-08',
'60% of population live in block 1641 number 17-23',
'80% of population live in block 677B number 05-03')
如果更容易将所有数字变为 4 位数(最大位数),那也可以:
c( '0050% of population live in block 0050 number 0027-0004',
'And 0001% of population live in block 0008 number 0001-0042',
'And 0001% of population live in block 0005B number 0001-0008',
'0060% of population live in block 1641 number 0017-0023',
'0080% of population live in block 0677B number 0005-0003')
重要的是所有具有相同位数的数字都遵循相同的格式。最后,我想读出块和编号(例如'block 50 number 27-04')并检查重复项(实际向量要长得多,由块和编号中的重复项组成,但之前的文本不同)-我目前不能,因为字符串的开头可能会有所不同。
我尝试了几种方法,例如 gsub("(\\d)+", "0\\1", myvec),但都没有成功。
谢谢!
【问题讨论】: