欢迎来到代码驿站!

Python代码

当前位置:首页 > 软件编程 > Python代码

Python实现数据地址实体抽取

时间:2023-02-26 08:35:19|栏目:Python代码|点击:

一、数据地址实体抽取的目的及问题

对数据的地址进行实体识别,主要作用是确定我们的数据主体最终可以归到哪一行政单位,从而在各行政单位上对数据主体的归属问题进行判断。

因何原因使用实体抽取:

例如原始数据所提供的信息为**省**市(地级)**市(县级)**镇,数据处理上,要对数据的省、地级市、县级市等信息进行单独抽取。

上述为标准的提供数据,但有时会出现:**省**市(县级市),或者**市(县级),这时候就要对数据进行补齐工作,补充该县级市所属的地级市、省。

其次,还有写出**省**市(地级市)的情况,没有写明县级市,如果以县级市进行对其,非实体抽取方式可能会将地级市与省份信息后移一位。

二、方法一:调用ahocorasick库

ahocorasick是个python模块,Aho-Corasick算法是多模式匹配中的经典算法,目前在实际应用中较多。

ahocorasick安装:

1、确定安装VC++,安装后,在模块选择里勾选Visual Studio Build Tools里面的C++ Build Tools

2、执行pip安装命令

pip install pyahocorasick

(若该方法安装失败,可尝试CSDN中其他安装方法)

ahocorasick使用:

若直接使用,会出现如下问题:

ahocorasick并没有对数据进行补全的功能,若原数据对子数据有确实,无法进行补齐,如内蒙古自治区——磴口县与内蒙古自治区——巴彦淖尔市——磴口县。后者数据符合要求,可分级进行存储,但前者地级市数据丢失。

解决方法:

1、仅将最后一级,如县级市作为关键字,对关键字进行查找,若关键词存在,通过关键词数据集向上补齐地级市与省份关键字,若不存在,则定为空。

2、若县级市关键词不存在,则将其县级市位置信息定为空,再将非空数据进行标记。

3、仅将地级市作为关键字,对具有标记的数据进行关键字查找,查找后再向上进行补齐。

4、以此类推,将其余省份信息进行补齐

该方法可参考,但不推荐,较为麻烦,且具有隐患。

三、方法一:调用cpca库

1、安装cpca库

pip指令执行:

pip install cpca

2、cpca库使用方法

import cpca
information=['内蒙古自治区呼伦贝尔市牙克石市民生B区','赛罕区大学西路街道内蒙古大学','回民区北二环路内蒙古财经大学','北京海淀区','河北深州市' ]
s=cpca.transform(information)
print(s)

3、执行结果

 注:cpca第三方库只会精确到县级市,县级市后均为地址

总结

上一篇:Python一行代码实现生成和读取二维码

栏    目:Python代码

下一篇:python网络通信图文详解

本文标题:Python实现数据地址实体抽取

本文地址:http://www.codeinn.net/misctech/226464.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有