全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1222 6
2021-05-17

现在经常做数据集的匹配,遇到名称细微差别的时候,试过很多文本分析的匹配方法,都失败了(因为名称差别小、数据量大),只能最后手动人工匹配,于是想在闲暇之余整理一个词库,用R语言训练,以后每次输入有差别名称时,都能输出想要的标准名称,请详见图片


期望结果:在输入【安庆第五高中】后,会输出标准名称【安庆市第五高中】;总数据有几万行,还需很长的时间整理,但现在实在没想出来R语言怎样实现这样的效果,望各路大神指点迷津,万分感谢!


附件列表
1621176909748.png

原图尺寸 12.81 KB

1621176909748.png

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2021-5-17 09:23:21
我感觉这个是你想做的?
https://blog.csdn.net/qingchen98/article/details/109654746
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-5-17 12:03:10
owenqi 发表于 2021-5-17 09:23
我感觉这个是你想做的?
谢谢回答!但是所有模拟匹配的方法我都尝试过了,无果,才想着要建立一个词库,整体输入进软件,然后再返回想要的标准名称:)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-5-17 14:58:02
人工输入的数据有很强的随意性。
解决这个问题,最理想的还是在数据输入阶段,通过列表选择的方法提供标准化的选项,限制输入误差。

遇到你这种情况,想通过机器学习的方法解决也是可以理解的,但是任何机器学习方法都是有误差的,不可能做到百分之百匹配。而对于你这种几万行的数据,哪怕有三五个误差,麻烦也够大的。

你讲的思路是标准词+异化,这种方法的主要问题是你要想到每个标准词的所有可能变异形式,但是你再怎么聪明,也不可能把所有人的简化、失误考虑进去,另外如果标准词多的话,工作量也是蛮大的。

所以,建议你反过来想,只建立一个标准词的库,然后用jiebaR处理输入数据,提出输入数据的关键词,用关键词与标准库匹配。这种好处是,输入的数据再怎么异化,还是能提出其中的关键词的,除非是NA。只要能提出关键词来,就可以匹配到标准词。所谓以不变应万变。
至于误差的检验,可以用一个笨办法,就是将匹配后的数据因子化后做一个table,看看是否有不在标准词范围内的样本。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-5-17 16:40:25
llb_321 发表于 2021-5-17 14:58
人工输入的数据有很强的随意性。
解决这个问题,最理想的还是在数据输入阶段,通过列表选择的方法提供标准 ...
@llb_321 感谢你详尽的解答,我会探索你提到的方法。因为真实的数据是全国几万家医院,现在每次匹配下来都会有几千家未匹配的数据需要人工匹配,于是想到这个办法不如一劳永逸。

以我在原帖中附上的图片为例,我没有想到用R里面的什么机器学习方法可以输入这些文字变量,从而输出指定标准名称,请问大神有无高见? :)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-5-17 19:36:03
我回复中的原意是用机器学习的方法无法满足百分之百的匹配要求,所以不用考虑。
至于有什么方法,关联规则分析大概可以实现,思路是建立标准词和变异词之间关联规则,然后用变异词预测标准词。
但是,还是回到老问题,任何模型都是有误差的,而基于这些模型所做的任何预测也是有误差的,这是统计原理的问题。
而且这种方法还是有上面所说的另外一个问题,就是对于每一个标准词,你都要尽可能多地给出变异词,这个步骤仍然需要人工介入。

你可能没理解我提到的另外一个方案,就是不要管这个标准词可能变成什么,只要界定标准词库。
处理实际的样本时,比如有人可能输入“安庆第五中学”,利用中文解词包jiebaR,可以把这个变异词分解成“安庆”、“第五”、“中学”,这个过程就相当于你人工建立变异词库,只不过你建立的是“安庆第五中学”,而jiebaR建立的是变异词的结构分解。然后,你设计一个算法,反正就几万家医院,数据不是很大,不赶时间的话就用循环一条条地匹配,每一次匹配过程可以这样,分别看分解的词匹配到标准库里的哪些词,通常三个词匹配的子集的交集,大概率是可以匹配到最终的标准词的。
另外,你的数据里可能也有医院地址之类的,可以再结合地址的判断,以提高匹配的准确率。
对于正名和别名相差比较大的数据,比如第三军医大学第三附属医院,更多人叫大坪医院,处理起来就麻烦了,所以更需要结合地址、邮编、电话等多个变量进行综合判断。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群