从python中的文本中提取信息

时间:2018-09-02 05:25:43

标签: python nlp nltk text-mining information-extraction

我是文本挖掘的新手。我有一个CSV文件。我需要遍历每一行并提取一些信息,然后将它们写入另一个CSV文件。我正在寻找字典中的特定信息。考虑下面的句子:

  

“应用程序版本为1.8.2,变量skt.len传递了必需的信息。文件ReadMe.txt具有规范。”

我的词典是:[“应用程序版本”,“变量”,“文件”]

我需要提取:

  • 应用程序版本:1.8.2
  • 变量:skt.len
  • 文件:ReadMe.txt

从文本中提取此类信息的最佳方法是什么?我正在使用NLTK和StanfordCoreNLP功能。但是,我还不能提取信息。我正在考虑使用正则表达式提取应用程序版本。有想法吗?

PS:我知道这可能会使任务更加复杂。但是,CSV文件每一行中的句子可能具有不同的结构。例如:一行中的“应用程序版本”,可能在另一行中是“应用程序版本”。或者一行中的“文件”可以是另一行中的“文件名”。

1 个答案:

答案 0 :(得分:1)

我使用R,下面是提取变量值的一种方法(不是最好的方法,只是为了展示它的工作原理):

>> str_extract(text, '(?<=variable\\s)(\\w+)(.)?(\\w+)?')

此处,文本是您共享的整个字符串。这给了我一个输出

>> skt.len

我确信Python中有类似的函数可以完成此操作并以所需的格式获得输出。