开始使用免费开始使用

移除停用词并缩减数据集

在本练习中,您将从数据中移除停用词。停用词是一些常见但往往信息量不大的词,例如 "I"、"the"、"a" 等。您可以用自定义列表移除许多显而易见的停用词。但在本练习中,您只需从环境中已经为您提供的精选列表 stop_words 中移除这些停用词。

移除停用词后,您将创建一个成对 RDD(pair RDD),其中每个元素是一个二元组 (k, v)k 是键,v 是值。在本例中,pair RDD 的形式为 (w, 1),其中 w 是 RDD 中的每个词,1 是一个数。最后,您将把 pair RDD 中键相同的值进行合并,以统计每个词的出现次数。

请记住,您的工作区中已经提供了 SparkContext scsplitRDD,以及列表变量 stop_words

本练习是课程的一部分

使用 PySpark 的大数据基础

查看课程

练习说明

  • 过滤 splitRDD,移除在变量 stop_words 中列出的停用词。
  • splitRDD 的每个词元素创建一个 pair RDD 二元组,包含该词(使用迭代变量 w)以及数字 1
  • 获取 pair RDD 中每个词的出现次数(词频)。请使用对键值对 (k,v) 操作的转换。仔细考虑这里应使用哪个函数。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# 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)
编辑并运行代码