ROpenNLP:部分语音(POS)注释挂在大文件上

时间:2014-07-09 23:01:02

标签: r nlp opennlp rscript part-of-speech

以下脚本使用低于+ -4000行的文件进行标记注释非常精确和快速。 脚本挂起超过这个大约4000行。永远不要处理数据。 输入文件是纯文本,使用bash脚本在R脚本的参数中给出

#!/usr/bin/Rscript
require("NLP")
require("openNLP")
library(rJava)

args <- commandArgs(trailingOnly=TRUE)
s <- readLines(args)
s <- as.String(s)
sent_token_annotator <- Maxent_Sent_Token_Annotator()
#sent_token_annotator
word_token_annotator <- Maxent_Word_Token_Annotator()
#word_token_annotator
a2 <- annotate(s,
           list(sent_token_annotator,
                word_token_annotator))
#s[a2]
pos_tag_annotator <- Maxent_POS_Tag_Annotator()
pos_tag_annotator
a3 <- annotate(s, pos_tag_annotator, a2)
a3w <- subset(a3, type == "word")
tags <- sapply(a3w$features, "[[", "POS")
sprintf("%s/%s", s[a3w], tags)

0 个答案:

没有答案