对于切词得到的英文单词要进行词干化处理,主要包括将名词的复数变为单数和将动词的其他形态变为基本形态。对动词的词干化可以使用 Porter 算法[5]。
R语言很多包可以词干化,如snowball,Rstem等,但是它们的词干化是比较机械的,比如掐头去尾,不少词干可读性差,词干化以后要词干还原不太方便。但运用python nltk的wordnet词料库却可以方便地实现词干化,不需词干还原。
from nltk.corpus import wordnet as wn
wn.morphy('dancing')
#'dancing'
wn.morphy('needs')
#'need'
wn.morphy('business')
#'business'
wn.morphy('got')
#'get'
我们可以看到needs->need,got->get,这就是词干化处理;