2015-02-11 133 views
-2

其实我正在为邮轮公司做评论分析。我不能告诉你整个程序,因为它很长,但至少是一个快照。我把所有的评论,分成几个句子,然后从评论中提取一些短语......例如, '美妙的小屋','优质的服务'。现在为了情感分析,我必须将该短语的所有名词映射到特定的主题。现在在那个映射中,我需要所有名词的同义词和所有关于这个词的词语。所以我的文本挖掘的最终结果将会更加高效。我想你对我正在做的事情有一点点想法。 我会重复我的问题..在Excel中我有一行单词或说名词..当我运行代码[R,VBA或任何]它应该给我与这些单词有关的所有单词.. [我提取同义词与vba代码]。 希望你明白了..?创建词的其他形式[名词,形容词,复数,动词..一切]

+1

嗯这样的字典用例是什么?也许把词汇转换成一个共同的根源是另一种选择。如果没有,你应该看看像[WordNet]这样的数据库(http://en.wikipedia.org/wiki/WordNet)。无论如何,这个问题可能太广泛了。 – lukeA 2015-02-11 11:20:59

+0

我不知道R绑定,但看到https://www.nodebox.net/code/index.php/Linguistics - verb.infinitive()/ present_participle() - 他们采取的方法记录 – 2015-02-11 11:27:16

+0

@Roland:可以一个OP接受对暂缓问题的回答? – lawyeR 2015-02-11 13:28:44

回答

4

您可以使用包tm及其词干功能。

如果你的文本文件是

text <- c("taste", "tastes", "tasting") 

您可以创建一个文集

corpus <- Corpus(VectorSource(text) 

然后有脑干功能剥离的话他们的根。 (助手功能避免了一些问题。)

stemDocumentfix <- function(x){ # put in business code 
    PlainTextDocument(paste(stemDocument(unlist(strsplit(as.character(x), " "))), collapse=' ')) 
} 

corpus <- tm_map(corpus, stemDocumentfix) 

inspect(corpus) 
<<VCorpus (documents: 3, metadata (corpus/indexed): 0/0)>> 

[[1]] 
<<PlainTextDocument (metadata: 7)>> 
tast 

[[2]] 
<<PlainTextDocument (metadata: 7)>> 
tast 

[[3]] 
<<PlainTextDocument (metadata: 7)>> 
tast 

您也可以看看qdap包,它提供了一系列的功能,用于文本挖掘。

+1

这个答案适合你吗?你会考虑接受它吗? – lawyeR 2015-02-12 02:32:56

+0

感谢您的回复......我认为您认为我拥有所有的单词,但我不是。那就是我想要的。所有单词!!!我有1000的单词,我必须找到相关单词..我知道某种字典会给我,但它不是一个单词有1000个单词......所以怎么办? – Dharam 2015-02-13 12:52:38

相关问题