我使用已发布的here Porter Stemming算法的Matlab实现。当我在大部分文本中使用它时,传入字符串"ies"
时会收到错误消息。
>> porterStemmer('ies')
我收到错误消息:
Subscript indices must either be real positive integers or
logicals.
Error in porterStemmer>step2 (line 274)
switch b(k-1)
Error in porterStemmer (line 42)
x = step2(x{1}, x{2}, k0);
我想它可能是,因为"ies"
是一个常见的单词结尾,并且在第223行的脚本中显示为elseif ends('ies', b, k)
。
我期待这个程序对这样的案例很有用。 我认为这是错误还是错误?
目前,我已经使用了Porter Stemmer 2(here),它不会抛出错误并且会阻止“ies”到“ie”。词干“ies”显然有点无意义,但我宁愿不让它在像这样的边缘情况下抛出错误。