2016-08-09 4 views
1

Я следовал следующий вопрос: Python remove stop words from pandas dataframePython удалить настроенные стоп-слова из панд dataframe

, но он не работает для меня настроенного списка стоп-слов, проверить этот код:

pos_tweets = [('I love this car', 'positive'), 
('This view is amazing', 'positive'), 
('I feel great this morning', 'positive'), 
('I am so excited about the concert', 'positive'), 
('He is my best friend', 'positive')] 

import pandas as pd 
test = pd.DataFrame(pos_tweets) 


test.columns = ["tweet","col2"] 
test["tweet"] = test["tweet"].str.lower().str.split() 

stop = ['love','car','amazing'] 

test['tweet'].apply(lambda x: [item for item in x if item not in stop) 

print test 

результат is:

        tweet  col2 
0      [i, love, this, car] positive 
1     [this, view, is, amazing] positive 
2   [i, feel, great, this, morning] positive 
3 [i, am, so, excited, about, the, concert] positive 
4     [he, is, my, best, friend] positive 

слова любовь, автомобиль и удивительные все еще там, что мне не хватает?

спасибо!

ответ

1

Вам нужно назначить выход обратно в колонну tweet:

test['tweet'] = test['tweet'].apply(lambda x: [item for item in x if item not in stop]) 

print (test) 
             tweet  col2 
0         [i, this] positive 
1       [this, view, is] positive 
2   [i, feel, great, this, morning] positive 
3 [i, am, so, excited, about, the, concert] positive 
4     [he, is, my, best, friend] positive 
+0

ваше решение работал pperfectly! еще один вопрос, что я должен сделать, чтобы удалить запятые из текста, как: твит col2 0 [я это] положительный 1 [это мнение] положительный 2 [я чувствую себя прекрасно это утро] положительный 3 [ я так взволнован о концерте] положительный 4 [он мой лучший друг] положительный – Ctrip

+1

Вам нужно преобразовать список в строки для каждой строки? – jezrael

Смежные вопросы