- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我非常感谢您对解决以下问题的最佳方法的想法。我正在使用本质上相似的汽车分类列表示例来给出一个想法。
问题:从给定文本中提取数据元组。
以下是数据的一些特征。
文本中的词汇(单词)仅限于特定领域。我们假设最多 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 LEXUS GS 430 BLACK ON BLACK 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 美元(旧金山)图片
可能的选择:
我想弄清楚的是,正则表达式对于这项工作来说是否太复杂,而文本分类器是否太过杀伤力?
如果选择使用文本分类器,那么您认为最容易实现的是什么。
预先感谢您的帮助。
最佳答案
这是一个经过充分研究的问题,名为 information extraction 。做你想做的事情并不简单,也不像你听起来那么简单(即机器学习并不是一种矫枉过正)。有多种技术,您应该阅读研究领域的概述。
关于regex - 帮助 : Extracting data tuples from text. .. 正则表达式还是机器学习?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6323740/
我有一个包含文件名 和文件路径 的元组列表。我想找到重复的 filename(但 filepath 可能不同),即文件名相同但 filepath 可能不同的元组。 元组列表示例: file_info
我有一个像这样定义的变量 auto drum = std::make_tuple ( std::make_tuple ( 0.3f , Ex
我有一个包含几个字段的自定义结构,我想在快速 switch 语句中对其进行模式匹配,这样我就可以通过将其中一个字段与另一个字段进行比较来自定义匹配正则表达式。 例如鉴于这种结构: struct MyS
我有一种动态元组结构: template //Should only be tuples class DynamicTuple { vector data; //All data is st
这个问题在这里已经有了答案: What and When to use Tuple? [duplicate] (5 个答案) 关闭 8 年前。 我正在查看 Tuple 的在线示例,但我没有看到任何理
在我的项目中我有很多坐标要处理,在二维情况下我发现(cons x y)的构造比(list x y)快和 (vector x y)。 但是,我不知道如何将 cons 扩展到 3D 或更进一步,因为我没有
我有以下 Scala 代码: def f(x: Int, y: Int): Option[String] = x*y match { case 0 => None case n =>
我的直觉告诉我,在一般情况下,只有宏或复杂类型的体操才能解决这个问题。 Shapeless 或 Scalaz 可以在这里帮助我吗?这是 N=2 问题的具体实例,但我正在寻找的解决方案适用于所有合理的
为什么这段 Scala 代码是这样的: class Test { def foo: (Int, String) = { (123, "123") } def bar: Unit
我是 python 和 pygame 的新手,我正在尝试学习向量和类的基础知识,但在这个过程中我搞砸了,而且我在理解和修复标题中的错误消息方面苦苦挣扎。 这是我的 Vector 类的代码: impor
我正在编写一个程序来打开和读取一个 txt 文件,并在每一行中循环。将第 2 列和第 4 列中的值相乘并将其分配给第 5 列。 A 500.00 A 84.15 ? B 648.80 B 77.61
我知道还有其他几个问题提出了完全相同的问题,但是当我运行时: 导入命令 从 pyDes 导入 * def encrypt(data, password,): k = des(password,
我有一个元组列表,内容如下: >>>myList [(), (), ('',), ('c', 'e'), ('ca', 'ea'), ('d',), ('do',), ('dog', 'ear', '
给定一个 boost::tuple 和 std::tuple,你如何在它们之间进行转换? 也就是说,您将如何实现以下两个功能? template boost::tuple asBoostTuple(
我无法初始化 std::tuple来自 std::tuple 的逐元素元素兼容类型。为什么它不像 boost::tuple 那样工作? #include #include template st
我是 Storm 的新手并且我正在尝试找出如何编写一个 bolt 测试来测试子类 BaseRichBolt 中的 execute(Tuple tuple) 方法。 问题是 Tuple 似乎是不可变的,
如果我有如下元组列表: [('a', 'b'), ('c', 'd'), ('a', 'b'), ('b', 'a')] 我想删除重复的元组(在内容和内部项目顺序方面重复)以便输出为: [('a',
我编写了一个简单的脚本来模拟基于每用户平均收入 (ARPU)、利润率和客户保持客户的年数 (ltvYears) 的客户生命周期值(value) (LTV)。下面是我的脚本。它在“ltvYears =
以下是我的代码,它是一组元组:。输出:设置([(‘A’,20160129,36.44),(‘A’,20160104,41.06),(‘A’,20160201,37.37)])。如何将另一个元组(‘A’
我用以下代码编写了一个程序: import pandas as pd import numpy as np from typing import Tuple def split_data(self,
我是一名优秀的程序员,十分优秀!