RDD 编程5

一、词频统计:

1.读文本文件生成RDD lines

2.将一行一行的文本分割成单词 words

3.全部转换为小写

4.去掉长度小于3的单词

5.去掉停用词

6.转换成键值对 map()

7.统计词频 reduceByKey()

 8.按字母顺序排序 sortBy(f)

9.按词频排序 sortByKey()

 

行动操作练习:

first()         

返回第一个元素

take(n)       

返回前n个元素

takeOrdered(n)

返回排序后的前n个元素

top(n)        

返回最大的n个元素

collect()     

返回所有元素,列表

collectAsMap()

返回所有元素的字典,MAP形式的串行化

count()

返回元素个数

countByValue()

返回每个元素重复个数,字典

countByKey()

返回的是每一键组内的记录数,字典

lookup(key)

返回某键值下的所有值,列表

 

 

二、学生课程分数案例

总共有多少学生?map(), distinct(), count()

开设了多少门课程?

每个学生选修了多少门课?map(), countByKey()

每门课程有多少个学生选?map(), countByValue()

Tom选修了几门课?每门课多少分?filter(), map() RDD

Tom选修了几门课?每门课多少分?map(),lookup()  list

Tom的成绩按分数大小排序。filter(), map(), sortBy()

 

9.生成(课程,分数)RDD,观察keys(),valu

10.每个分数+5分。mapValues(func)

11.求每门课的选修人数及所有人的总分。combineByKey()

12.求每门课的选修人数及平均分,精确到2位小数。map(),round()

13.求每门课的选修人数及平均分。用reduceByKey()实现,并比较与combineByKey()的异同。

 

 

 

 

posted @ 2021-04-19 09:03  翔云cxx  阅读(63)  评论(0编辑  收藏  举报