用Scala语言完成一个简单的词频统计- Word Count;新手入门案例,原创!!
2020-06-28 05:12
471 查看
用Scala语言完成一个简单的词频统计- Word Count;新手入门案例 !!
- 数据尊卑
先准备一个简单的数据:
路径:C:\Users\Administrator\Desktop\work\hello.txt
内容:hello world hello world hello world hello world
然后用Scala 完成对这个文件的词频统计 内容如下:
代码:
def main(args: Array[String]) { /** * 1 :List(txt) === 得到一个List集合 * List(hello world hello world hello world hello world) * 2 :l.flatMap(_.split(" ")) === 按照 " " 拆分,然后水平化处理得到一个集合,flatMap = flatten+map * List(hello, world, hello, world, hello, world, hello, world) * 3 :.map(x =>(x,1)) === 把每一个元素变成 => (元素,1) * List((hello,1), (world,1), (hello,1), (world,1), (hello,1), (world,1), (hello,1), (world,1)) * 4 :.groupBy(_._1) === //每一个map,按照它的第一个元素(_1) 分组, 例子(hello,1)._1 就是hello,然后按hello分组 * Map(world -> List((world,1), (world,1), (world,1), (world,1)), hello -> List((hello,1), (hello,1), (hello,1), (hello,1))) * 5 :.map(x=>(x._1,(x._2).size)) === 把集合中的元素第一个值,变成(值,个数) 例子:hello -> List((hello,1), (hello,1))) -> (hello,2) */ val txt = scala.io.Source.fromFile("C:\\Users\\Administrator\\Desktop\\work\\hello.txt").mkString val l = List(txt) val result = l.flatMap(_.split(" ")) .map(x =>(x,1)) .groupBy(_._1) .map(x=>(x._1,(x._2).size)) println("统计结果"+result) }
相关文章推荐
- 用Spark写一个简单的wordcount词频统计程序
- Hadoop词频统计,mapreduce,怎么做一个自己的wordcount?
- 使用Scala程序实现WordCount--词频统计(代码)
- hadoop入门之利用hadoop来对文档数据归类统计案例wordcount
- Java、Scala、Python ☞ 本地WordCount词频统计对比
- spark简单入门案例wordCount
- MR英语单词频次统计案例-----wordcount
- 大数据入门--简单wordcount源码分析
- Java实现词频统计(Wordcount)-Map或Hashtable的value排序
- MapReduce——WordCount案例(统计单词个数)
- 一个简单的WordCount程序
- MapReduce入门之多种统计方式wordcount(续)
- Spark Streaming开发入门——WordCount(Java&Scala)
- mapreduce入门案例wordcount
- spark小应用一:wordcount,按词频降序(SCALA)
- 【原创】分享一个分析函数统计案例
- python代码简单实现一个词频统计
- MapperReduce入门Wordcount案例
- Scala入门学习之【wordcount】
- 【python新手入门】一个python List 的简单运用 -----班级学生管理系统