使用任何NLP库使用NER提取机场代码和航空公司代码?
我想从字符串中提取机场代码和航空公司代码。机场/城市代码为3个字母的阿尔法代码。航空公司代码是两个字母的字母和字母数字代码。 航空公司代码示例 AA=美国航空公司。 机场代码 肯尼迪国际机场 LGA==拉瓜迪亚机场 我有一份世界上所有机场代码和航空公司代码的清单。 我要提取的字符串类型如下 JFKAAX/BOSAACHIM100.00Q9USMEXQ125.00YLEE/CH30500.00ENDREO0.56893458 这是一个模糊的概念,因为KAA也可以被识别为机场。这是一个有效的机场代码使用任何NLP库使用NER提取机场代码和航空公司代码?,nlp,nltk,apache-spark,stanford-nlp,opennlp,Nlp,Nltk,Apache Spark,Stanford Nlp,Opennlp,我想从字符串中提取机场代码和航空公司代码。机场/城市代码为3个字母的阿尔法代码。航空公司代码是两个字母的字母和字母数字代码。 航空公司代码示例 AA=美国航空公司。 机场代码 肯尼迪国际机场 LGA==拉瓜迪亚机场 我有一份世界上所有机场代码和航空公司代码的清单。 我要提取的字符串类型如下 JFKAAX/BOSAACHIM100.00Q9USMEXQ125.00YLEE/CH30500.00ENDREO0.56893458 这是一个模糊的概念,因为KAA也可以被识别为机场。这是一个有效的机场代码
如何使用NER提取这两个项目。如果NER不合适,还有其他方法吗。我使用了简单的正则表达式,告诉我它是否合适:
In [1]: a = 'JFKAAX/BOSAACHIM100.00Q9USMEXQ125.00YLEE/CH30500.00ENDROE0.56893458'
In [4]: import re
In [15]: re.findall('(\w{3})(\d*(\.\d*)?)(\w{2})', a)
Out[15]:
[('JFK', '', '', 'AA'),
('BOS', '', '', 'AA'),
('CHI', '', '', 'M1'),
('00Q', '9', '', 'US'),
('MEX', '', '', 'Q1'),
('00Y', '', '', 'LE'),
('CH3', '0500.00', '.00', 'EN'),
('DRO', '', '', 'E0'),
('568', '934', '', '58')]
您能提供您发布的字符串的输出内容吗?您可以用括号标记机场名称和航线,例如:
X机场代码是否有固定模式?你能列出一个字符串示例列表吗?这些代码的来源是什么?@alvas是的,有一个固定的模式。机场代码机场代码机场代码。原始航空公司目的地。有时在AirportCode和AirlineCode或“X/”之间有十进制数字。我想知道我是否培训了一个模型(或创建了一个语料库/语料库),其中包含了所有的航线代码和城市代码。NLTK或OpenNLP是否能够提取航线代码和机场代码及其位置。这类工作做得对吗??提取地点名称(机场代码)机构名称(航空公司代码)@Harsh.Scindia我认为,NER不适合你的问题。我会使用简单的字符串操作和正则表达式。