Python Pandas NLTK如何将端口词干应用于已被标记的数据框列

时间:2018-11-28 20:57:13

标签: python pandas nltk stemming

我有以下示例数据集:

No  category    problem_definition
175 2521        ['coffee', 'maker', 'brewing', 'properly', '420']
211 1438        ['galley', 'work', 'table', 'stuck']
912 2698        ['cloth', 'floor', 'coming', 'aft']
572 2521        ['compartment', 'door', 'stuck']

problem_definition字段已通过停用词移除和标记化。现在,我正在尝试将Port Stemmer应用于problem_definition列。

我尝试了以下代码:

from nltk.stem import PorterStemmer

ps = PorterStemmer()

df['problem_definition_stemmed'] = df['problem_definition_stopwords'].apply(lambda x : [PorterStemmer.stem(y) for y in x])

我收到以下错误:

TypeError: 'PorterStemmer' object is not callable

1 个答案:

答案 0 :(得分:0)

PosrterStemmer是一个类构造函数。它没有方法.stem。实际词干为psPorterStemmer.stem(y)必须为ps.stem(y)