大文本数据的正则表达式(内存问题)

时间:2017-03-29 03:49:40

标签: r regex loops memory-management

我有一个非常大的数据框df;它有1,870,355行和10列,其中一列是job.titles。我还有一个包含60,315个元素(jobs)的职位的字符向量。我想匹配数据框中的行,这些行的作业标题也在字符向量jobs中。

对于jobs的每个元素,我想知道具有相应职位的df行。

我尝试的方法是lapplygrep

的组合
lapply(jobs, function(x) grep(pattern = x, x = df$job.titles, ignore.case = T)

不幸的是,我收到以下错误:

Error: cannot allocate vector of size 7.1 Mb

我认为"矢量"这里提到的是list正在创建的,其长度为60,315个元素。而且,这些元素中的每一个都有不同的长度,有些可能有数十万个元素。

我很清楚,例子必须是可重复的,以便读者轻松提供帮助;但是,我无法使这种可重复性。使用的代码实际上有效,但受到内存问题的限制。

在这种情况下,我该怎么办?

0 个答案:

没有答案