sprak 使用java8新特性lamada实现单词统计

Java文本处理8-统计文本中汉字的信息熵 1、任务简介 本节任务是在上一节任务《Java文本处理7-查询文本中单个汉字的信息熵》的基础上统计文本中每一个汉字的信息熵,关于信息熵计算的方法在上一节任务中已经阐述过了,本节的第一个程序是将结果打印出来,而第二个程序是将结果保存到一个指定文本中。 2、基本任务和代码 (1)任务1 1)任务内容 统计指定文本中每一个汉字的信息熵,然后将统计结果打印出来。 2)具体思路 关于具体思路使用到了上两节... 阅读详情

import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaPairRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;

import scala.Tuple2;

import java.util.Arrays;

/**
 * spark读取本地文件进行单词个数计算
 */
public class SparkWc{
    public static void main(String [] args){
        //本地测试,一定要设置setMaster为local
        SparkConf sparkConf = new SparkConf().setMaster("local").setAppName("wc");
        JavaSparkContext sc = new JavaSparkContext(sparkConf);
        JavaRDD<String> lines = sc.textFile("D:\\a.txt");
        //从文件读取一行分隔
        JavaRDD<String> words = lines.flatMap(line -> Arrays.asList(line.split(" ")).iterator());
        JavaPairRDD<String,Integer> pairRDD = words.mapToPair(word -> new Tuple2<String,Integer>(word,1));
        JavaPairRDD<String,Integer> pairRDD1 = pairRDD.reduceByKey((value1,value2) -> value1 + value2);
        //注意传递元组作为参数的时候,一定要加上括号
        JavaPairRDD<Integer,String> pairRDD2 = pairRDD1.mapToPair((Tuple2<String,Integer> tuple2) ->
                new Tuple2<Integer,String>(Integer.valueOf(tuple2._2.toString()),String.valueOf(tuple2._1)));
        JavaPairRDD<String,Integer> pairRDD3 = pairRDD2.sortByKey(false).mapToPair((Tuple2<Integer,String> tuple2) ->
                new Tuple2<String,Integer>(tuple2._2.toString(),Integer.valueOf(tuple2._1.toString())));
        pairRDD3.foreach(wc -> System.out.println(wc));
        //将结果写入b文件夹
        pairRDD3.saveAsTextFile("D:\\b");
        sc.close();
    }
}

 

maven配置:

       <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.11</artifactId>
            <version>2.0.2</version>
        </dependency>

        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-streaming_2.11</artifactId>
            <version>2.0.2</version>
        </dependency>

 

Spark Scala简单 统计单词个数 该资源可以简单计算文本中单词个数 立即下载

相关推荐

【安全加固】应对Sweet32攻击:TLS/SSL协议3DES漏洞深度解析与修复指南

本文深度解析了CVE-2016-2183(Sweet32攻击)漏洞,该漏洞利用TLS/SSL协议中3DES加密算法的64位块大小缺陷,通过大量数据流量实施“生日攻击”导致信息泄露。文章提供了从原理分析、系统排查到跨平台修复的完整指南,重点指导如何在Windows、Linux服务器及网络设备中禁用不安全的3DES密码套件,并采用AES-GCM等更安全的加密方式,以彻底修复此TLS/SSL漏洞。

weixin_29230649的博客 586

java8 wordcount_2. java8 形式实现单词个数统计(wordcount)

date[2018-12-20]前期准备@Testpublic void test() {List words = new ArrayList<>();words.add("Hello");words.add("World");List collect = words.stream().map(s -> s.split("")).distinct().collect(Collec...

weixin_39530833的博客 355

抖音批量取消关注神器:5行JS代码搞定,告别手动操作(附详细步骤)

本文介绍了一种利用JS脚本在抖音创作者平台批量取消关注的高效方法。通过浏览器开发者工具执行简单的JavaScript代码,即可自动化模拟点击操作,快速清理大量关注列表,告别繁琐的手动操作。文中提供了详细的步骤和核心代码,适合有一定技术基础的用户参考。

weixin_29009971的博客 609

使用jdk8 stream 统计单词数

  有同学问如何使用stream统计单词数。这是个好例子,也很典型,在这里补上。  下面的例子实现了从一个文本文件读取(英文)文本并统计单词数的功能。  package com.imooc;  import java.io.BufferedReader;  import java.io.FileReader;  import java.io.IOException;  /**  * 使用strea...

qianfeng_dashuju的博客 2388

有源滤波电路设计

目录一、低通滤波器1、同相输入低通滤波器(1)一阶低通滤波电路(2)二阶低通滤波电路(压控电压源;Sallen-Key)2、反相输入低通滤波器(1)一阶低通滤波电路(2)二阶低通滤波电路(无限增益多路反馈)二、高通滤波器1、同相输入高通滤波器(1)一阶高通滤波电路(2)二阶高通滤波电路(压控电压源;Sallen-Key)2、反相输入高通滤波电路(1)二阶高通滤波电路(无限增益多路反馈) 一、低通滤波器 1、同相输入低通滤波器 (1)一阶低通滤波电路 即在一阶无源低通滤波器的基础上,加了一个集成运放。 它的

qq_41873236的博客 3万+

【微信读书】数据内容接口逆向解析实战:从请求捕获到文本提取

本文详细解析了微信读书网页版数据内容接口的逆向工程实战过程。通过浏览器开发者工具捕获网络请求,定位关键API接口,并深入JavaScript代码分析数据解析逻辑,最终实现从请求模拟到文本提取的完整流程。文章旨在技术学习,探讨Web应用数据交互原理,帮助开发者理解现代前端数据流与编码机制。

game4的博客 421

JAVA实战————8、数字与英文单词直接的对应转换

要求:从终端接收一周中的第n天,之后将该第n天对应的英文字母单词进行输出实现代码:package Java_008数字与英文单词之间的对应转换; import java.util.Scanner; public class main{ public static void main(String[] args) { System.out.print("output:请输入你想要查询星期数对...

Fly_鹏程万里 1962

柔性电极材料新突破:清华团队实现0.1mV级脑信号采集精度

清华团队的 0.1mV 级柔性电极突破,不仅是材料科学与神经工程的跨界胜利,更标志着脑机接口从 “信号采集” 向 “神经交互” 的范式转变。当电极与脑组织实现 “柔性共生”,人类首次拥有了窥探大脑微观电活动的 “精密探头”,这既是神经疾病诊疗的里程碑,更是人机融合时代的新起点。随着技术标准化与产业生态的完善,这场始于实验室的 “柔性革命”,正加速向临床病房、智能工厂、消费电子等场景渗透,为脑机接口的大规模应用铺设 “柔性跑道”。:当柔性电极实现 “神经信号的无损捕捉”,如何平衡技术创新与伦理边界?

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 2950

Java中的lamda表达式---更加高效简洁的表达方式

前言刚好今天看到了lambda表达式,学习了一下基本用法,由于上午就是翻开几篇博客看了看,怕自己忘了,所以还是通过博客的方式记录下。语法确实简洁高效,以后也会在代码里慢慢转变多使用lambda表达式。 前提想在项目中使用lambda表达式,那么必须在build.gradle文件中加入如下代码:defaultConfig { ...//省略 jackOptions {

潘浩的博客 5134

智能Agent如何重塑企业流程

在当今数字化时代,企业流程的效率和敏捷性至关重要。传统企业流程往往受限于人工操作,效率低下、成本高昂,难以适应快速变化的市场环境。智能Agent作为一种新兴技术,凭借其强大的智能化能力,正在逐渐改变企业流程的运作模式,为企业带来新的机遇和挑战。智能Agent是一种能够感知环境、自主决策、执行任务的软件实体。它可以模拟人类的智能行为,例如学习、推理、规划和沟通。通过将智能Agent嵌入到企业流程中,可以实现流程的自动化、优化和智能化,从而提高效率、降低成本、提升客户体验。8.1 研究成果总结。

AGI×大数据,开启智能时代的认知跃迁;解码AGI,赋能数据驱动的智能革命。 875

别再用LabelImg了!我手搓了一个C#“一站式”YOLO工具箱,标注训练推理全搞定

这个工具箱目前已经在两个小型产线项目中试用,反馈非常好。效率提升:原本需要 2 天完成的“数据准备 - 训练 - 验证”循环,现在缩短到了 2 小时。门槛降低:产线技术员经过 10 分钟培训,就能独立完成新产品的模型迭代。当然,它还有改进空间未来计划集成主动学习功能:自动筛选出置信度低的图片,推荐优先标注。支持多模型管理:方便在不同产品型号间快速切换。增加PLC 通信模块:直接在推理界面配置 IO 信号,实现真正的软硬联动。最后想说工具的本质是服务于人。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 442

Spark 开发调优(一)

Spark性能优化 - 开发调优优化一 避免创建重复的RDD通常来说,我们在开发一个Spark作业时,首先是基于某个数据源(比如Hive表或HDFS文件)创建一个初始的RDD;接着对这个RDD执行某个算子操作,然后得到下一个RDD;以此类推,循环往复,直到计算出最终我们需要的结果。在这个过程中,多个RDD会通过不同的算子操作(比如map、reduce等)串起来,这个“RDD串”,就是RDD lin

路漫漫其修远兮,吾将上下而求索 6938

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

java8 统计_Java8中使用stream进行分组统计和普通实现的分组统计的性能对比

在ImportNew上面看到一篇文章: http://www.importnew.com/14841.html,说的是使用 Java 8的对集合采用流操作的新特性,替代旧的使用循环对集合操作的方式,使用Java8的流操作功能对集合进行分组,以及对相应的内容进行去重等操作等,使用Java8编写的代码可读性和理解性都有了非常大的提高,是非常值得称称赞的。Java8通过流对集合的分组操作,让分组功...

weixin_34369657的博客 1022

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

在Java中使用Lambda表达式统计词频

在Java中使用Lambda表达式统计词频常规方法在集合(List)上调用stream()生成该集合元素的流视图,然后采用将一个返回流的函数传入flatMap(),这样会产生每个单词,最后将这些词进行统计存入Map中,这里会使用counting函数

背对星星和月亮 2371

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

用java编写spark程序,简单示例及运行

 最近因为工作需要,研究了下spark,因为scala还不熟,所以先学习了java的spark程序写法,下面是我的简单测试程序的代码,大部分函数的用法已在注释里面注明。 我的环境:hadoop 2.2.0                    spark-0.9.0                    scala-2.10.3                    jdk1

xusanyao的博客 2万+

Spark开发必会之:Java8新特性Lambda表达式

package lambda表达式; import java.util.Arrays; import java.util.List; import org.junit.Test; import com.sun.org.apache.xerces.internal.util.SynchronizedSymbolTable; /** * Lambda的常用六种写法 * () ->...

曹利荣的博客 747

JavaPairRDD方法中几种存储方式的坑

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33857679的博客 1134

wordcount 统计单词数量并按照数量排序

需求,从文件中读取单词,计算单词的数量,并按照数量从大到小排序。 文件内容 wc.txt tom jerry henry jim suse lusy aaa bbb ccc ddd aaa eee ccc eee tom jim henry jim jim tom 代码内容: import org.apache.log4j.{Level, Logger} import ...

猪坚强-历经磨难亦不忘初心 1212

java8 统计字符串字母个数的几种方法(有你没见到过的)

1.统计字符串字母个数(并且保持字母顺序)比如: aabbbbbbbba喔喔bcab  cdabc  deaaa目前我做知道的有5种方式,如果你还有更好的,欢迎赐教要求:统计字符串的字符个数,最好按顺序输出每个字符的个数//方式1 public static void letterCount1(String s) { s=s.replaceAll(" +", ""); ...

u011165335的博客 1万+

分别用Scala,Java,JavaLambda编写统计单词个数案列

Scala import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /** * 1.创建SparkContext * 2.创建RDD * 3调用RDD的Transformation * 4调用Action * 5释放资源 */ object Demo { d...

weixin_45480444的博客 283

Java 8 统计单词个数的三种写法(Word Count)

文章目录思想代码 思想 三种写法都是先按照一定的规则进行字符串的切分,然后将其统计起来。 代码 package org.feng.java8; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashMap; import java.util.Map; import java.util.regex.Pattern; import jav

FBB360JAVA的博客 1638

Java8中使用stream进行分组统计和普通实现的分组统计的性能对比

    在ImportNew上面看到一篇文章:http://www.importnew.com/14841.html,说的是使用Java8的对集合采用流操作的新特性,替代旧的使用循环对集合操作的方式,使用Java8的流操作功能对集合进行分组,以及对相应的内容进行去重等操作等,使用Java8编写的代码可读性和理解性都有了非常大的提高,是非常值得称称赞的。    Java8通过流对集合的分组操作,让分...

冯立彬的博客 5万+

spark版WordCount(Java),将输出结果排序,并去除输出文件中的括号。

本文为spark版的WordCount(java),主要实现了三个功能:     1.对单词出现的频数进行统计     2.对输出结果中单词的出现的频数从大到小进行了排序     3.去除了输出文件中的括号     具体代码如下:     package com.cxd.core; import java.util.Arrays; import org.apache.spark.Sp

u010592112的博客 2728

使用Java8 Lambda表达式进行Spark编程

近日,Databricks官方网站发表了一篇博文,用示例说明了lambda表达式如何让Spark编程更容易。文章开头即指出,Spark的主要目标之一是使编写大数据应用程序更容易。Spark的Scala和Python接口一直很简洁,但由于缺少函数表达式,Java API有些冗长。因此,随着Java 8增加了lambda表达式,他们更新了Spark的API。Spark 1.0将提供Java 8 lam...

千淘万漉 2892
上一篇: HDFS的读写
下一篇: try catch 和throw以及throws的使用
逍遥bxf飞雪
博客等级 码龄14年 3粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值