Een beetje Twitter-tekstanalyse
Nu je je DataFrame met tweets klaar hebt, ga je een beetje tekstanalyse doen om te tellen hoeveel tweets de woorden 'clinton', 'trump', 'sanders' en 'cruz' bevatten. In de code vóór de oefening hebben we de volgende functie word_in_text() gedefinieerd, die aangeeft of het eerste argument (een woord) voorkomt in het tweede argument (een tweet).
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
Je gaat itereren over de rijen van de DataFrame en uitrekenen hoeveel tweets elk van onze trefwoorden bevatten! De lijst met objecten voor elke kandidaat is geïnitialiseerd op 0.
Deze oefening maakt deel uit van de cursus
Gevorderd data importeren in Python
Oefeninstructies
- Binnen de
for-lusfor index, row in df.iterrows():verhoogt de code nu de waarde vanclintonmet1elke keer dat een tweet (tekstreeks) waarin 'Clinton' voorkomt wordt aangetroffen; maak de code compleet zodat hetzelfde gebeurt voortrump,sandersencruz.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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(____, ____)