【发布时间】:2018-05-10 11:06:05
【问题描述】:
我正在尝试从文本文档中提取一些信息。我已使用pdftext(). 将此文本文档转换为数据框现在我想提取我所追求的信息。下面是创建像我这样的数据框的代码:
text <- data.frame(page = c(1,1,2,3), sen = c(1,2,1,1), text = c("Dear Mr case 1","the value of my property is £500,000.00 and it was built in 1980",
"The protected percentage is 0% for 2 years", "The interest rate is fixed for 2 years at 4.8%"))
从上面的数据框中,我需要提取以下内容:
1:人的性别。在这种情况下,它将是男性(看着先生)
2:代表属性值的数字。在这种情况下为 500,000.00 英镑。
3:受保护的百分比值,在我们的例子中为 0%。
4:利率值,在我们的例子中是 4.8%。
理想情况下,我想输出如下数据框:
即使我可以单独提取这些信息,它仍然足够好。我可能可以使用正则表达式,告诉它找到像“受保护的百分比”这样的模式,然后给我在它找到这个模式后立即出现的数字。任何帮助将不胜感激。
【问题讨论】:
-
你是对的,正则表达式可以工作,但如果你的文本变化很大,那么它就会失败。我建议您查看自然语言处理 (NLP) 包,例如
koRpus,以获得更好的文本挖掘。 -
数据结构的标准化程度如何?例如,是否总是每人四个字符串?周围的文字总是一样的吗?如果是这样,在这种情况下,一些正则表达式将是微不足道的。
-
结构总是与周围的文本相同。人名的长度并不总是相同,但总体而言,其他所有内容的格式都一致。
标签: r regex text-mining information-extraction