Python 如何将词干法应用到词典中?

Python 如何将词干法应用到词典中?,python,dictionary,nlp,stemming,Python,Dictionary,Nlp,Stemming,我在NLP工作。我将一组文章与输入词进行比较。主要目标是在发现一堆单词时对文本进行分类 我试图提取字典中的值并将其转换为列表,然后对其应用词干分析。问题是,稍后我将根据键执行另一个拆分和比较过程。我认为如果直接在字典里工作会更实际 search = {'Tecnology' : ['computer', 'digital', 'sistem'], 'Economy' : ['bank', 'money']} words_list = list() for key in search.keys()

我在NLP工作。我将一组文章与输入词进行比较。主要目标是在发现一堆单词时对文本进行分类

我试图提取字典中的值并将其转换为列表,然后对其应用词干分析。问题是,稍后我将根据键执行另一个拆分和比较过程。我认为如果直接在字典里工作会更实际

search = {'Tecnology' : ['computer', 'digital', 'sistem'], 'Economy' : ['bank', 'money']}
words_list = list()
for key in search.keys():
    words_list.append(search[key])
search_values = [val for sublist in words_list for val in sublist]
search_values_stem = [stemmer.stem(word) for word in test]


我希望词干词典能够直接与词干文章的列进行比较

如果我正确理解了您的问题,您希望将词干应用于词典的值(而不是键),此外,词典中的值都是字符串列表

以下代码应执行此操作:

def stemList(l):
    return([stemmer.stem(word) for word in l])

# your initial dictionary is called search (as in your example code)
#the following creates a new dictionary where stemming has been applied to the values

stemmedSearch = {}
for key in search:
    stemmedSearch[key] = stemList(search[key])