开始使用免费开始使用

创建基础 RDD 并进行转换

非结构化数据(日志行、图像、二进制文件)的规模正在快速增长,而 PySpark 通过 RDD 非常适合分析这类数据。在这个由 3 个部分组成的练习中,您将编写代码,从《威廉·莎士比亚全集》(Complete Works of William Shakespeare) 中找出最常见的单词。

实现词频统计程序的大致步骤如下:

  • Complete_Shakespeare.txt 文件创建一个基础 RDD。
  • 使用 RDD 转换,将基础 RDD 的每个元素拆分为一个很长的单词列表。
  • 从数据中移除停用词。
  • 创建键值对 RDD,其中每个元素是 ('w', 1) 形式的二元组。
  • 按键(单词)对键值对 RDD 的元素分组,并将它们的值相加。
  • 交换键(单词)和值(计数),使键为计数、值为单词。
  • 最后按降序排序该 RDD,并打印出现频率最高的 10 个单词及其频次。

在本练习的第一部分,您将从 Complete_Shakespeare.txt 文件创建一个基础 RDD,并将其转换为一个长的单词列表。

请注意,您的工作区中已经提供了 SparkContext sc。变量 file_path(指向 Complete_Shakespeare.txt 文件的路径)也已为您加载。

本练习是课程的一部分

使用 PySpark 的大数据基础

查看课程

练习说明

  • 创建一个名为 baseRDD 的 RDD,用于从 file_path 读取每一行。
  • baseRDD 转换为一个长的单词列表,并创建新的 splitRDD
  • 统计 splitRDD 中单词的总数。

交互式实操练习

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

# Create a baseRDD from the file path
baseRDD = sc.____(file_path)

# Split the lines of baseRDD into words
splitRDD = baseRDD.____(lambda x: x.split())

# Count the total number of words
print("Total number of words in splitRDD:", splitRDD.____())
编辑并运行代码