Немного текстового анализа твитов
Теперь, когда DataFrame с твитами готов, проведём небольшой текстовый анализ: подсчитаем, сколько твитов содержат слова 'clinton', 'trump', 'sanders' и 'cruz'. В предварительном коде упражнения определена функция word_in_text(), которая проверяет, встречается ли первый аргумент (слово) во втором аргументе (тексте твита).
import re
def word_in_text(word, text):
word = word.lower()
text = text.lower()
match = re.search(word, text)
if match:
return True
return False
Вам предстоит пройти по строкам DataFrame и подсчитать, сколько твитов содержит каждое из ключевых слов. Счётчики для каждого кандидата уже инициализированы значением 0.
Это упражнение является частью курса
Импорт данных в Python: средний уровень
Инструкции к упражнению
- В цикле
for index, row in df.iterrows():код уже увеличивает значениеclintonна1каждый раз, когда встречается твит (строка с текстом), упоминающий «Clinton». Дополните код так, чтобы то же самое происходило дляtrump,sandersиcruz.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Initialize list to store tweet counts
[clinton, trump, sanders, cruz] = [0, 0, 0, 0]
# Iterate through df, counting the number of tweets in which
# each candidate is mentioned
for index, row in df.iterrows():
clinton += word_in_text('clinton', row['text'])
trump += word_in_text(____, ____)
sanders += word_in_text(____, ____)
cruz += word_in_text(____, ____)