对于 NLP 项目,我需要根据训练示例生成用于训练目的的随机数字字符串。数字以字符串形式出现(来自 OCR)。让我将此处的问题陈述限制为百分比值,其中到目前为止观察到的格式包括以下格式或指出的格式特征的任何有意义的组合:
'60' # no percentage sign, precision 0, no other characters
'60.00' # no percentage sign, precision 2, dot for digit separation
'60,000' # no percentage sign, precision 3, comma for digit separation
'60.0000' # no percentage sign, precision 4, dot for digit separation
'60.00%' # same as above, with percentage sign
'60.00 %' # same as above, with whitespace
'100%' # three digits, zero precision, percentage sign
'5' # single digit
'% 60' # percentage sign in front of the number, whitespace
我的目标是在保留每个字符格式的同时随机化数字(例外:由于数字数量不同,当 5.6 可以随机化为 18.7 或 100.0 时,反之亦然)。百分比数值应介于 0 和 100 之间。举几个我需要它的例子:
input = '5' # integer-like digit
output = [ '7',
'18',
'100']
input = '100.00 %' # 2-precision float with whitespace & percentage sign
output = [ '5.38 %',
'38.05 %',
'100.00 %']
inpput = '% 60,000' # percentage sign, whitespace, 4-precision float, comma separator
output = ['% 5,5348',
'% 48,7849',
'% 100,0000']
我怎么能这样做?解决方案可以是概念性的,也可以是代码示例。解决方案需要反映真实数据中可能出现的格式
到目前为止,我所知道的最好的方法是为我能想到的每种格式变体强制手写 if 子句。
胡子哥哥
阿波罗的战车
相关分类