使用lambda删除停用词并将其他停用词添加到停用词列表中

问题描述 投票:0回答:1

i具有包含41,000行Flickr标签的多列数据框。我只想从一列中删除所有英语停用词,而其他列则保持不变。

这是我的代码从nltk.corpus中提取停用词的列表:

from nltk.corpus import stopwords
stopWordsListEng = stopwords.words("english")

但是我想添加其他我可以想到的停用词:

according accordingly across act actually

我还没有弄清楚如何将其添加到现有停用词列表中。

以及如何应用lambda删除仅一列中的停用词。因为我希望我的代码尽可能简单。

这是我的专栏的样子:

column1                        column2                                                 column3
some words from this column    i don't know actually what across to me accordingly     25,000

删除所有停用词后,我希望我的专栏看起来像这样(或多或少):

column1                        column2                column3
some words from this column    don't know what to me  25,000
python lambda tags flickr stop-words
1个回答
0
投票

您可以使用列表extend将其他停用词添加到现有停用词中>

_new_stopwords_to_add = ['according', 'accordingly', 'across', 'act', 'actually']
stopWordsListEng.extend(_new_stopwords_to_add)

仅使用一个从熊猫列中删除停用词,

df['column2'] = df['column2'].apply(lambda x: ' '.join([item for item in x.split() if item not in stopWordsListEng]))
© www.soinside.com 2019 - 2024. All rights reserved.