stemmer alternatives and similar packages
Based on the "Natural Language Processing" category.
Alternatively, view stemmer alternatives based on common mentions on social networks and blogs.
-
prose
DISCONTINUED. :book: A Golang library for text processing, including tokenization, part-of-speech tagging, and named-entity extraction. -
gse
Go efficient multilingual NLP and text segmentation; support English, Chinese, Japanese and others. -
universal-translator
:speech_balloon: i18n Translator for Go/Golang using CLDR data + pluralization rules -
locales
:earth_americas: a set of locales generated from the CLDR Project which can be used independently or within an i18n package; these were built for use with, but not exclusive to https://github.com/go-playground/universal-translator -
segment
A Go library for performing Unicode Text Segmentation as described in Unicode Standard Annex #29 -
go-nlp
DISCONTINUED. Utilities for working with discrete probability distributions and other tools useful for doing NLP work. -
go-localize
i18n (Internationalization and localization) engine written in Go, used for translating locale strings. -
gotokenizer
A tokenizer based on the dictionary and Bigram language models for Go. (Now only support chinese segmentation)
CodeRabbit: AI Code Reviews for Developers

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of stemmer or a related project?
Popular Comparisons
README
Stemmer package for Go
Stemmer package provides an interface for stemmers and includes English, German and Dutch stemmers as sub-packages:
porter2
sub-package implements English (Porter2) stemmer as described in http://snowball.tartarus.org/algorithms/english/stemmer.htmlgerman
sub-package implements German stemmer as described in http://snowball.tartarus.org/algorithms/german/stemmer.htmldutch
sub-package implements Dutch stemmer as described in http://snowball.tartarus.org/algorithms/dutch/stemmer.html
Installation
English stemmer:
go get github.com/dchest/stemmer/porter2
German stemmer:
go get github.com/dchest/stemmer/german
Dutch stemmer:
go get github.com/dchest/stemmer/dutch
This will also install the top-level stemmer
package.
Example
import (
"github.com/dchest/stemmer/porter2"
"github.com/dchest/stemmer/german"
"github.com/dchest/stemmer/dutch"
)
// English.
eng := porter2.Stemmer
eng.Stem("delicious") // => delici
eng.Stem("deliciously") // => delici
// German.
ger := german.Stemmer
ger.Stem("abhängen") // => abhang
ger.Stem("abhängiger") // => abhang
// Dutch.
dt := dutch.Stemmer
dt.Stem("lichamelijke") // => licham
dt.Stem("opglimpende") // => opglimp
Tests
Included test_output.txt
and test_voc.txt
are from the referenced original
implementations, used only when running tests with go test
.
License
2-clause BSD-like (see LICENSE and AUTHORS files).
*Note that all licence references and agreements mentioned in the stemmer README section above
are relevant to that project's source code only.