解决以下问题的最佳方法是什么?我正在使用本质上相似的汽车分类列表示例来给出一个想法。
问题:从给定文本中提取数据元组。
以下是数据的一些特征。
文本中的词汇(单词)仅限于特定领域。假设最多 100-200 个单词。
需要解析的文本是标题,如下所示的汽车广告数据。所以每条记录对应一个元组(行)。
在某些情况下,某些属性可能会丢失。例如,在原始数据中,年份下方的第 5 行缺失。
有些单词组合在一起(二元组)。就像“低里程”。
可用历史数据 = 10,000 条记录
传入的新数据量 = 1000-1500 条记录/周
预期输出应采用(年份、品牌、型号、功能)的形式。所以输出应该是这样的
1 -> (2009, 福特, Fusion, SE)
2 -> (1997, 福特, 金牛座, 旅行车)
3 -> (2000, 三菱, Mirage, DE)
4 ->(2007 年,福特、Expedition、EL Limited)
5 -> ( , 本田, 雅阁, EX)
....
....
原始标题数据:
1 -> 2009 福特 Fusion SE - 7000 美元
2 -> 1997 年福特金牛座旅行车 - 800 美元(圣何塞东)
3 -> '00 三菱 Mirage DE - 2499 美元(萨拉托加)图片
4 -> 2007 福特 Expedition EL Limited - 7800 美元 (x)
5 -> 本田雅阁前低英里 - 2800 美元(都柏林/普莱西顿/利弗莫尔)图片
6 -> 2004 本田 ODASSEY LX 68K 英里 - 10800 美元(丹维尔 / 圣拉蒙)
7 -> 93 LINCOLN MARK - 2000 美元(奥克兰东部)图片
8 -> #######2006 雷克萨斯 GS 430 黑对黑 114KMI ####### - 19700 美元(圣拉斐尔)图片
9 -> 2004 奥迪 A4 1.8T FWD - 8900 美元(萨克拉门托)图片
10 -> #######2003 GMC C2500 HD EX-CAB 6.0 V8 EFI 白色 4X4 ####### - 10575 美元(圣拉斐尔)图片
11 -> 1990 款丰田卡罗拉运行良好!节省燃气! 5 速清洁! REG 2011 O.B.O - $1600(海沃德/卡斯特罗谷)pic img
12 -> 本田雅阁 EX 2000 - $4900(都柏林/普莱斯顿/利弗莫尔)图片
13 -> 2009 雪佛兰 Silverado LT Crew Cab - 23900 美元(都柏林/普莱斯顿/利弗莫尔)图片
14 -> 2010 Acura TSX - V6 - TECH - 29900 美元(都柏林/普莱西顿/利弗莫尔)图片
15 -> 2003 Nissan Altima - 1830 美元(旧金山)图片
可能的选择:
我想弄清楚的是,正则表达式对于这项工作来说是否太复杂,而文本分类器是否太过杀伤力?
如果选择使用文本分类器,那么您认为什么是最容易实现的?
IE库编写提取规则快速字典匹配。 < I think it will work best for you problem. There also example how to create
我认为最好的选择是为每个车型编写一个 String -> Maybe Tuple 类型的函数。然后在每个输入上运行所有这些,并丢弃这些输入,导致零或太多元组。