Spark:scala集合转化为DS/DF
scala集合转化为DS/DF
case class TestPerson(name: String, age: Long, salary: Double)
val tom = TestPerson("Tom Hanks",,35.5)
val sam = TestPerson("Sam Smith",,40.5)
val PersonList = mutable.MutableList[TestPerson]()
PersonList += tom
PersonList += sam val personDS = PersonList.toDS()
println(personDS.getClass)
personDS.show() val personDF = PersonList.toDF()
println(personDF.getClass)
personDF.show()
personDF.select("name", "age").show()
输出结果:
class org.apache.spark.sql.Dataset +---------+---+------+
| name|age|salary|
+---------+---+------+
|Tom Hanks| | 35.5|
|Sam Smith| | 40.5|
+---------+---+------+ class org.apache.spark.sql.DataFrame +---------+---+------+
| name|age|salary|
+---------+---+------+
|Tom Hanks| | 35.5|
|Sam Smith| | 40.5|
+---------+---+------+ +---------+---+
| name|age|
+---------+---+
|Tom Hanks| |
|Sam Smith| |
+---------+---+
参考资料:
https://stackoverflow.com/questions/39397652/convert-scala-list-to-dataframe-or-dataset
Spark:scala集合转化为DS/DF的更多相关文章
- Scala实战高手****第6课 :零基础实战Scala集合操作及Spark源码解析
本课内容1.Spark中Scala集合操作鉴赏2.Scala集合操作实战 --------------------------------------------------------------- ...
- Spark记录-Scala集合
Scala列表 Scala列表与数组非常相似,列表的所有元素都具有相同的类型,但有两个重要的区别. 首先,列表是不可变的,列表的元素不能通过赋值来更改. 其次,列表表示一个链表,而数组是平的. 具有类 ...
- Scala实战高手****第14课:Scala集合上的函数式编程实战及Spark源码鉴赏
package com.dt.spark.scala.bascis object Functional_Itearal { def main(args: Array[String]): Unit ...
- Scala集合操作
大数据技术是数据的集合以及对数据集合的操作技术的统称,具体来说: 1.数据集合:会涉及数据的搜集.存储等,搜集会有很多技术,存储技术现在比较经典方案是使用Hadoop,不过也很多方案采用Kafka. ...
- Scala集合笔记
Scala的集合框架类比Java提供了更多的一些方便的api,使得使用scala编程时代码变得非常精简,尤其是在Spark中,很多功能都是由scala的这些api构成的,所以,了解这些方法的使用,将更 ...
- Scala集合类型详解
Scala集合 Scala提供了一套很好的集合实现,提供了一些集合类型的抽象. Scala 集合分为可变的和不可变的集合. 可变集合可以在适当的地方被更新或扩展.这意味着你可以修改,添加,移除一个集合 ...
- C# 将list<>泛型集合 转化为 DataTable
使用案例:将页面easy ui 中datagrid表格中的数据,存成json字符串, 通过ajax和ashx传入C#将string类型的json字符串解析成list<>泛型集合, 由于业务 ...
- 泛型集合转化为DataTable
public class DataTableUtil { /// <summary> /// 泛型集合转化为dataTable /// </summary> /// <t ...
- Scala集合常用方法解析
Java 集合 : 数据的容器,可以在内部容纳数据 List : 有序,可重复的 Set : 无序,不可重复 Map : 无序,存储K-V键值对,key不可重复 scala 集合 : 可变集合( ...
随机推荐
- 笔记:MyBatis XML配置详解
MyBatis 的配置文件包含了影响 MyBatis 行为甚深的设置(settings)和属性(properties)信息.文档的顶层结构如下: configuration 配置 properties ...
- 【Windows】定时任务设置
Windows定时任务 linux上面的定时任务已经解除过好多次了.不外乎crontab,at之类的命令,而windows上的定时任务今天才偶尔看到怎么设置.想到以后生活上可能会用到一些这方面的知识就 ...
- Algorithm --> 邮票连续组合问题
邮票组合问题 有四种面值的邮票很多枚,面值分别为1,4,12,21,取五张,求取出这些邮票的最大连续组合值 代码: #include <stdio.h> #include <stri ...
- Linux下安装配置jdk
步骤: 1.去官网下载jdk压缩包 网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151. ...
- 在Python中进行JSON转化
序列化,指的是把内存中的变量(如类的实例)变成可存储或可传输的过程. JSON(JavaScript Object Notation, JavaScript对象表示)是网络传输中经常使用的一种数据形式 ...
- Mac下安装virtualenv, 并在PyCharm中使用
今天在安装一个leader写的package的时候,同事建议安装到虚拟环境中,再在PyCharm里使用该虚拟环境即可.此处记录下经过: 开发Python应用的时候,有时会遇到不同的Python应用依赖 ...
- python元类理解2
恩,对元类理解又有新的收获,其实类似于装饰器,只不过装饰器是修饰函数,元类用来定制一个类. 代码如下,这是一个使用了函数做元类传递给类: input: def upper_attr(class_nam ...
- Transaction 事务简单详解
Transaction 也就是所谓的事务了,通俗理解就是一件事情.从小,父母就教育我们,做事情要有始有终,不能半途而废. 事务也是这样,不能做一半就不做了,要么做完,要么就不做.也就是说,事务必须是一 ...
- 通过cmd窗口导入导出mysql数据库
1.导入数据库 使用source命令 首先要在cmd窗口中连接数据库,然后再用source命令进行导入操作 mysql>use 数据库名 mysql>source d:/dbname.sq ...
- TED - How To Get Better At The Things You Care About
TED01 - How To Get Better At The Things You Care About 昨天我发布了攻克英语口语的宣言,今天就行动.TED是我们学习口语的好地方,本着学以致用的原 ...