spark2.1:flatMap的用法
代码示例:
val sample_data_combine_result=List(
(0,(List(FitModel(4022,1447.92,-8.38983306721434,2.0)),1)),
(1,(List(FitModel(1083,389.88,-11.057139857142857,3.0)),1)),
(2,(List(FitModel(4022,1447.92,-8.38983306721434,2.0)),1))
) scala> val fitResult = sample_data_combine_result.flatMap(s => {
| var fitResultItems: ListBuffer[FitModelWithSceneType] = null
| if(s._1==0){
| fitResultItems=ListBuffer(
| FitModelWithSceneType(0,1,3.0,-3.9110667661835516,0.6989700043360189),
| FitModelWithSceneType(0,51,3.0,-3.9110667661835516,1.1760912590556813)
| )
| }
| if(s._1==1){
| fitResultItems=ListBuffer(
| FitModelWithSceneType(1,1,3.0,-3.9110667661835516,0.6989700043360189),
| FitModelWithSceneType(1,51,3.0,-3.9110667661835516,1.1760912590556813),
| FitModelWithSceneType(1,101,3.0,-3.9110667661835516,1.3979400086720377)
| )
| }
| if(s._1==2){
| fitResultItems=ListBuffer(
| FitModelWithSceneType(2,1,3.0,-3.9110667661835516,0.6989700043360189),
| FitModelWithSceneType(2,51,3.0,-3.9110667661835516,1.1760912590556813),
| FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377),
| FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377),
| FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377)
| )
| }
|
| fitResultItems
| })
fitResult: List[FitModelWithSceneType] =
List(
FitModelWithSceneType(0,1,3.0,-3.9110667661835516,0.6989700043360189),
FitModelWithSceneType(0,51,3.0,-3.9110667661835516,1.1760912590556813),
FitModelWithSceneType(1,1,3.0,-3.9110667661835516,0.6989700043360189),
FitModelWithSceneType(1,51,3.0,-3.9110667661835516,1.1760912590556813),
FitModelWithSceneType(1,101,3.0,-3.9110667661835516,1.3979400086720377),
FitModelWithSceneType(2,1,3.0,-3.9110667661835516,0.6989700043360189),
FitModelWithSceneType(2,51,3.0,-3.9110667661835516,1.1760912590556813),
FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377),
FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377),
FitModelWithSceneType(2,101,3.0,-3.9110667661835516,1.3979400086720377)
)
spark2.1:flatMap的用法的更多相关文章
- RxJava(三) flatMap操作符用法详解
欢迎转载,转载请标明出处: http://blog.csdn.net/johnny901114/article/details/51532776 本文出自:[余志强的博客] flatMap操作符的作用 ...
- 流API--流的映射
很多时候,将一个流的元素映射到另外一个流很有帮助.映射操作最具代表的就是map()方法.实际编码中,我们会经常用到,所以这里专门整理一篇博客. 考虑如下情景,对于一个包含了姓名,电话,年龄等属性构成的 ...
- RxJava在Android中使用场景详解
RxJava 系列文章 <一,RxJava create操作符的用法和源码分析> <二,RxJava map操作符用法详解> <三,RxJava flatMap操作符用法 ...
- Java8 stream学习
Java8初体验(二)Stream语法详解 Java 8 flatMap示例 第一个Stream Demo IDEA里面写Stream有个坑 虽然java文件中没错,但是但编译的时候还是报错了, In ...
- RxJava2实战---第五章 变换操作符和过滤操作符
RxJava2实战---第五章 变换操作符和过滤操作符 RxJava的变换操作符主要包括以下几种: map():对序列的每一项都用一个函数来变换Observable发射的数据序列. flatMap() ...
- java8学习之Stream分组与分区详解
Stream应用: 继续举例来操练Stream,对于下面这两个集合: 需求是:将这两个集合组合起来,形成对各自人员打招呼的结果,输出的结果如: "Hi zhangsan".&quo ...
- Stream之高级函数
上回文说到了有关Stream一些数学函数的用法.今天来说下Stream一些高级的函数用法,这些函数在日常工作中也是必不可少的,测试数据还是引用上一篇的数据. Map 这个方法我个人称之为转换函数,把一 ...
- Java8新特性之Optional,如何优雅地处理空指针
是什么 从 Java 8 引入的一个很有趣的特性是 Optional 类.Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException)-- 每个 Java ...
- Android RxJava 2 的用法 just 、from、map、subscribe、flatmap、Flowable、Function、Consumer ...【转】
先简单说说RxJava的用途与价值 原文出处:Android RxJava 2 的用法 用途: 异步 (也就是开线程跳转) 价值: 面对复杂的逻辑,它依然 简洁 ,代码 易读 RxJava2 与 Rx ...
随机推荐
- Navicat通过跳板机连接数据库
完成对应设置后,即可连接数据库,本人亲测!
- WBS
Need 需求分析: 为了满足中老年人因工作忙碌而无暇阅读的痛苦,我们设计推广出一款听书软件.可以给中老年人带来的好处是不再受繁琐的听书软件的束缚,操作简单,携带便捷. Approach 实现方法: ...
- 集合详解(python)
集合概念 集合是一个数学概念:由一个或多个确定的元素所构成的整体叫做集合. 集合中的元素三个特征: 确定性(元素必须可hash) 互异性(去重)--将一个列表变为集合,就自动去重了 无序性(集合中的元 ...
- oracle10g 基于linux6安装问题收集
1.[oracle@rsyslogserver database]$ dbca -silent -responseFile /home/oracle/database/dbca.rsp No comm ...
- 【Zabbix】 Zabbix表结构说明【转载】
本文转自[https://www.cnblogs.com/shhnwangjian/p/5484352.html] 参考文[https://www.cnblogs.com/learningJAVA/p ...
- STL --> set用法
set用法 一.set和multiset基础 set和multiset会根据特定的排序准则,自动将元素进行排序.不同的是后者允许元素重复而前者不允许. 需要包含头文件: #include <se ...
- Lucene教程 -------(一、初始Lucene)
一.lucene的介绍 lucene是一个全文检索的框架,apache组织提供了一个用java实现的全文检索的开源项目.功能非常的强大,api非常简单,并且有了全文检索的功能支持可以非常方便的实现根据 ...
- spring框架学习笔记4:SpringAOP实现原理
AOP AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善.OOP引入 ...
- linux,windows,ubuntu下git安装与使用
ubuntu下git安装与使用:首先应该检查本地是否已经安装了git ,如果没有安装的话,在命令模式下输入 sudo apt-get install git 进行安装 输入git命令查看安装状态及常用 ...
- 记录python接口自动化测试--把操作excel文件的方法封装起来(第五目)
前面补充了如何来操作excel文件,这次把如何获取excel文件的sheet对象.行数.单元格数据的方法进行封装,方便后面调用 handle_excel.py# coding:utf-8 import ...