DQinYuan / chinese_province_city_area_mapper

一个用于提取简体中文字符串中省,市和区并能够进行映射,检验和简单绘图的python模块

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

广东省东莞市莞城区东莞大道解析错误的问题

datochan opened this issue · comments

原先地址是: 广东省东莞市莞城区东莞大道海雅百货
解析的结果是:

区    市    省            地址
城区  东莞市  广东省  莞大道海雅百货自然堂专柜

😭 被领导骂的好惨, 哈哈 ...

我周末看看,对苛求100%准确的场景,还是最后再人工检查一下比较好 o(╥﹏╥)o

是哇,是哇。应该要检查一遍的。

这种错误不只有东莞,还有不少的。比如:

浙江省杭州市下城区青云街40号3楼

解析成了:

区    市    省            地址
城区  杭州市  浙江省  下青云街40号3楼

感觉应该是分词的问题, 去掉HMM之后用完整词库匹配可能会好些~~

pip install -U cpca更新一下
我增加了一个全文模式,可以解决这个问题:

location_str = ["浙江省杭州市下城区青云街40号3楼","广东省东莞市莞城区东莞大道海雅百货"]
from cpca import *
df = transform(location_str, cut=False)
df

输出结果:

     区    市    省        地址
0   下城区  杭州市  浙江省  青云街40号3楼
1   莞城区  东莞市  广东省    大道海雅百货

在要求准确率的情况下可以使用这个模式。
此外可以设置前看字符的数量来提高效率(默认是8,效率可能比较低):

location_str = ["浙江省杭州市下城区青云街40号3楼","广东省东莞市莞城区东莞大道海雅百货"]
from cpca import *
df = transform(location_str, cut=False, lookahead=3)
df

@DQinYuan
收到,多谢~

commented

奇怪,我最新安装的cpca版本 广东省东莞市莞城区东莞大道海雅百货 这个地址实验后,又变成以前的问题了