R从句子列表中提取职位

时间:2018-06-22 09:44:49

标签: r list nlp feature-extraction sentence-similarity

我目前正在编写一个脚本(R),以从句子中提取职称,这些句子取自各种公司高管的传记。我有一份职位清单和传记中的句子清单,我想知道如何提取每个句子中的职位清单。我尝试将句子分解成单词(与职称相同),并使用%in%进行匹配,虽然可以,但是并不能提取全部短语(董事会只是“董事会”和“董事”,不能包含“ of”,因为一堆不需要的of将被抽出”

job_title <- list("board of directors", "VP of sales")
sentences <- list("He was a member of the board of directors", "He joined as 
VP of sales", "He was born in 1968")

因此,从本质上讲,我希望一些代码可以浏览每个句子,将其与job_title匹配,然后提取职位名称,这样结果是: “董事会”和“销售副总裁”列表。 非常感谢!

1 个答案:

答案 0 :(得分:0)

也许您可以执行以下操作:

for (i in 1:2) {
  if(i == 1) {
    # check for board of directors
    dir_list <- as.integer(grepl(job_title[1], sentences, fixed=TRUE))
  } else {
    # check for vp sales
    cp_list <- as.integer(grepl(job_title[2], sentences, fixed=TRUE))
  }
}

这给出了:

dir_list as 1, 0, 0 and cp_list as 0, 1, 0

其中1表示在相关句子中找到了您要查找的字符串。例如,在第1句中找到了董事会,在第2句中找到了vp sales。因此,如果您在一个句子中都有两个,则两个列表都将有1,而如果没有找到,则您将有0。现在,您可以根据需要选择要使用这些值的内容。