5.RDD操作综合实例
一、词频统计
A. 分步骤实现
1准备文件
2下载小说或长篇新闻稿

3上传到hdfs上


4读文件创建RDD

分词

排除大小写lower(),map()

标点符号re.split(pattern,str),flatMap(),

停用词,可网盘下载stopwords.txt,filter(),

长度小于2的词filter()

5统计词频


6按词频排序

7输出到文件

8查看结果

B. 一句话实现:文件入文件出

sc.textFile("hdfs://localhost:9000/user/hadoop/sjh159.txt").flatMap(lambda a:a.split()).map(lambda a:a.lower()).filter(lambda a:re.split('\W+',a)).filter(lambda a:a not in stopwords).filter(lambda a:len(a)>2).map(lambda a:(a, 1)).reduceByKey(lambda a, b: a + b).sortBy(lambda x: x[1], False,1).saveAsTextFile('sjhOnceRdd')

二、求Top值
网盘下载payment.txt文件,通过RDD操作实现选出最大支付额的用户。
资源链接:https://pan.baidu.com/s/1Hc9SxMLcsP9HVQLZ7eSVYA 提取码:tefr




浙公网安备 33010602011771号