【发布时间】:2014-06-17 17:25:40
【问题描述】:
我想从一个相当大的表(大约 350 000 个观察值)中收集非结构化数据。你会推荐什么策略?
假设我有以下数据库
|ID | Description |
|12 | Mr A is thirty-five years old and works as an accountant in ...|
|34 | Mr B, 24 and has set up a retail business since 2004. |
|55 | Mr C aged 58, lives in town A and has a hardware shop ... |
...
我想在每次观察中获得城镇的年龄和职业。 (如果数据可用)。
我开始使用带有 Perl 类型正则表达式的 SAS。我花了很多时间构建正则表达式并捕获数据,但效果很好。我知道正则表达式可能不是最好的策略,但我想在观察次数增加时自动捕获大部分数据。
【问题讨论】:
-
这似乎是一个自然语言处理问题,正则表达式通常不适合。让人类进行数据输入可能是最简单的解决方案。但是,您可以为数据库构建一个图形界面来帮助输入数据。
-
regex 表示输入是结构化的,或 regular
-
@amon 你能指出如何构建图形界面吗?只是一些参考就可以了。
-
@veryhungrymike,我的数据是非结构化的,但它们仍然包含一些值得利用的模式。你能用多少种方式描述一个人的年龄或职业?
-
要构建用户界面,您可以使用 GTK 之类的原生工具包,但使用 CGI 前端构建简单的 CRUD Web 应用程序会容易得多。
标签: python regex linux perl sas