设为首页 加入收藏

TOP

数据清洗小记(10):清洗字典数据把“A1B1C1”翻译成对应中文字段
2015-11-21 01:27:21 来源: 作者: 【 】 浏览:0
Tags:数据 清洗 小记 字典 A1B1C1 译成 对应 文字

【背景】

某部委项目,获取到某采集端某类数据,需配合开发完成数据的抽取、清洗工作。其中有一类字典类字段,由于采集端数据问题,对于字典类的数据内容出现大量问题数据需要清洗,把字典值翻译成中文名称提供给开发使用,举个例子如下:
这里写图片描述
假设字典列表如下:
这里写图片描述
遇到问题1:如何进行翻译?
把A1翻译成“消防车”,把B1翻译成“警车”,把C1翻译成“大货车”。

遇到问题2:如何将翻译后结果更美观易读?
将翻译后结果由“消防车,警车,大货车,”转换成“消防车,警车,大货车”,即去掉翻译后的最后一个逗号。

【解决】
解决1:利用笨方法:replace翻译;
由于本次需翻译字典项不多,考虑到编写函数的繁琐性,于是想利用一个replace的笨方法来解决,起初担心效率问题,但实践后发现用replace套了19层后,转换效率上还可以接受。<??http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxwPr3ivvYyo7rA+9PDc3Vic3Ryus1pbnN0crqvyv2juzxiciAvPg0K0vLOqsD708NyZXBsYWNlvPK1pbet0uvKsaOsvNPI68HLtrq6xb340NDA4LHwvOS1xLfWuO6jrNXi0fm9q9Ta1+6687P2z9bSu7j2tuDT4LXEtrq6xaGj0OjSqsD708NpbnN0crLp0a+z9tfuuvPSu7j2trq6xcv51Nq1xM67yv2jrMi7uvPU2cD708NzdWJzdHK92Mihtb21ucr9tdq2/s67vLS/yaGjPGJyIC8+DQqx17bLo7o8YnIgLz4NCsjnufuyu9C0uq/K/bXEu7CjrMq1z9bOysziMbrNzsrM4jLKsaOsvau3osbwwb20znJlcGxhY2XXqru7o6yzybG+seSzycHLMrG2oaPL+dLUvajS6cD708O6r8r9o6yw0XJlcGxhY2W687XEveG5+9f3zqqx5MG/vfjQ0LSrtd2jrLz1ydmzybG+z/u6xKGjPC9wPg0KPHA+PHN0cm9uZz6hvsq10emhvzwvc3Ryb25nPjxiciAvPg0Ksr3W6DGjujxiciAvPg0Kc2VsZWN0IHJlcGxhY2UocmVwbGFjZSgmbHNxdW87QTFCMSZyc3F1bzssJnJzcXVvO0ExJnJzcXVvOywmcnNxdW87z/u3wLO1LCZyc3F1bzspLCZyc3F1bztCMSZyc3F1bzssJnJzcXVvO76vs7UsJnJzcXVvOykgZnJvbSBkdWFsOzxiciAvPg0KPGltZyBhbHQ9"这里写图片描述" src="https://www.cppentry.com/upload_files/article/57/1_xt2kd__.png" title="\" />
select replace(replace(‘B1A1’,’A1’,’消防车,’),’B1’,’警车,’) from dual;
这里写图片描述
步骤2:
select substr(‘消防车,警车,’,1,instr(‘消防车,警车,’,’,’,-1)-1) from dual;
这里写图片描述
select substr(‘警车,消防车,’,1,instr(‘警车,消防车,’,’,’,-1)-1) from dual;
这里写图片描述
结合步骤1和步骤2:

select substr(replace(replace(‘A1B1’,’A1’,’消防车,’),’B1’,’警车,’),1,instr(replace(replace(‘A1B1’,’A1’,’消防车,’),’B1’,’警车,’),’,’,-1)-1) from dual;
这里写图片描述
select substr(replace(replace(‘B1A1’,’A1’,’消防车,’),’B1’,’警车,’),1,instr(replace(replace(‘B1A1’,’A1’,’消防车,’),’B1’,’警车,’),’,’,-1)-1) from dual;
这里写图片描述

小知识,简而记之。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇开源分布式计算框架比较 下一篇数据清洗小记(11):Kettle_利用设..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: