Kom igångKom igång gratis

Ta bort stoppord och reducera datamängden

I den här övningen tar du bort stoppord från din data. Stoppord är vanliga ord som ofta saknar analytiskt intresse – till exempel "I", "the" och "a". Du kan ta bort många uppenbara stoppord med en egen lista, men i den här övningen använder du en färdig lista, stop_words, som finns tillgänglig i din miljö.

När stopporden är borttagna skapar du ett par-RDD där varje element är en paren-tuppel (k, v), där k är nyckeln och v är värdet. I det här exemplet består par-RDD:t av (w, 1), där w är ett ord i RDD:t och 1 är ett tal. Slutligen kombinerar du värdena med samma nyckel i par-RDD:t för att räkna antalet förekomster av varje ord.

Kom ihåg att du redan har ett SparkContext sc och splitRDD tillgängliga i din arbetsyta, tillsammans med listvariabeln stop_words.

Den här övningen är en del av kursen

Grunderna i Big Data med PySpark

Visa kurs

Övningsinstruktioner

  • Filtrera splitRDD och ta bort stopporden som finns listade i variabeln stop_words.
  • Skapa en par-RDD-tuppel som innehåller ordet (med iteratorn w) och siffran 1 för varje ordelement i splitRDD.
  • Beräkna antalet förekomster av varje ord (ordfrekvens) i par-RDD:t. Använd en transformation som arbetar med nyckel-värde-par (k, v). Tänk noga på vilken funktion som passar här.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod