2016-05-23 6 views
2

я покажу на примере:R wordstem рубящих слов слишком много

library(data.table) 
dt <- data.table(words = c("finance", "financial", "business"), 
        freq = c(123, 5, 4589)) 
dt <- dt[, words := SnowballC::wordStem(words, language = "english")] 
View(dt) 

words freq 
financ 123 
financi 5 
busi  4589 

Я думал, что слово, вытекающее бы мне финансы, финансы и бизнес. Я бы по крайней мере ожидал, что финансовые и финансовые будут иметь одно и то же базовое слово. Я пытаюсь сгруппировать похожие слова, он работает для некоторых слов, как есть, и у обоих есть есть, но для некоторых, как выше, он, похоже, не работает, разве что Im непонимание?

ответ

1

Кажется, что ваш результат - это то, что должен делать алгоритм стволовых барьеров Портера.

Documentation (Шаг 4) показаны примеры, вытекающие с суффиксами, используемых в вашем примере:

(т> 1) AL -> возрождение -> reviv

(м> 1) АНСЕ - > пособие -> позволяет

Если вы хотите сгруппировать ваши слова, то вы можете обрезать их перед запуском wordStem или соответствующее использование строки функции после того, как вытекающие (например, agrep).

 Смежные вопросы

  • Нет связанных вопросов^_^