Я хотел бы удалить стоп-слова, которые есть в списке списка, при этом сохраняя формат (т.е. список списка)
Ниже приведен код, который я уже пробовал
sent1 = 'I have a sentence which is a list'
sent2 = 'I have a sentence which is another list'
from nltk.corpus import stopwords
stop_words = stopwords.words('english')
lst = [sent1, sent2]
sent_lower = [t.lower() for t in lst]
filtered_words=[]
for i in sent_lower:
i_split = i.split()
lst = []
for j in i_split:
if j not in stop_words:
lst.append(j)
" ".join(lst)
filtered_words.append(lst)
Текущий вывод фильтруемых слов:
filtered_words
[['sentence', 'list'],
['sentence', 'list'],
['sentence', 'another', 'list'],
['sentence', 'another', 'list'],
['sentence', 'another', 'list']]
Требуемый вывод фильтрованных слов:
filtered_words
[['sentence', 'list'],
['sentence', 'another', 'list']]
Я получаю дубликат списка.Что я могу делать не так в цикле?Также есть ли лучший способ сделать это, чем писать так много для циклов?