# WordNetLemmatizer not lemmatizing the word "promotional" even with POS given

When I do wnl.lemmatize('promotional','a') or wnl.lemmatize('promotional',wordnet.ADJ), I get merely 'promotional' when it should return promotion. I supplied the correct POS, so why isn't it working? What can I do?

"promotional" is not an inflected form of "promotion", therefore "promotion" is not the lemma of "promotional". Actually, "promotion" is a noun and "promotional" is an adjective.

Maybe what you actually want to do is not lemmatisation but stemming. Note that the stem is the root of the word and, certainly, the stem of both "promotion" and "promotional" can be "promot" (or "promotion", depending on the convention).

• I tried stemming, but it would cause me further issues. For example, I won't be able to differentiate "bare" with "bar" if I stem all my words. Jul 15, 2021 at 16:02
• I understand, but lemmatization will not give you the same lemma for different words like "promotion" and "promotional". This kind of mismatch is usual in NLP projects. Sometimes they are ignored, sometimes they are addressed with some of hand-written rules for the diverging cases, if they are not many. Another option is to train your own lemmatizer or stemmer with data that fits your needs.
– noe
Jul 15, 2021 at 16:20
• I see - so there is no one-size-fits-all solution to this problem. Jul 15, 2021 at 16:26
• No, I don't think so.
– noe
Jul 15, 2021 at 16:28