Verwijder stopwoorden en reduceer de gegevensset
In deze oefening verwijder je stopwoorden uit je data. Stopwoorden zijn veelvoorkomende woorden die vaak niet interessant zijn, zoals "I", "the", "a" enzovoort. Je kunt veel voor de hand liggende stopwoorden verwijderen met je eigen lijst. Maar voor deze oefening verwijder je alleen de stopwoorden uit een samengestelde lijst stop_words die in je omgeving beschikbaar is.
Na het verwijderen van stopwoorden maak je een pair RDD waarin elk element een paar-tuple (k, v) is, waarbij k de sleutel is en v de waarde. In dit voorbeeld bestaat de pair RDD uit (w, 1), waarbij w staat voor elk woord in de RDD en 1 een getal is. Tot slot combineer je de waarden met dezelfde sleutel uit de pair RDD om het aantal voorkomens van elk woord te tellen.
Onthoud dat je al een SparkContext sc en splitRDD in je werkruimte hebt, samen met de lijstvariabele stop_words.
Deze oefening maakt deel uit van de cursus
Big Data Fundamentals met PySpark
Oefeninstructies
- Filter
splitRDDen verwijder de stopwoorden die in de variabelestop_wordsstaan. - Maak een pair RDD-tuple met het woord (gebruik de iterator
w) en het getal1uit elk woordelement insplitRDD. - Bepaal hoe vaak elk woord voorkomt (woordfrequentie) in de pair RDD. Gebruik een transformatie die werkt op key-valueparen (k,v). Denk goed na welke functie je hier gebruikt.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Filter splitRDD to remove stop words from the stop_words curated list
splitRDD_no_stop = splitRDD.____(lambda x: x.lower() not in ____)
# Create a tuple of the word (w) and 1
splitRDD_no_stop_words = splitRDD_no_stop.map(lambda w: (____, ____))
# Count of the number of occurences of each word
resultRDD = splitRDD_no_stop_words.____(lambda x, y: x + y)