写在前面:

A DataFrame is a Dataset organized into named columns.

A Dataset is a distributed collection of data.

贴代码:

package february.sql

import org.apache.spark.sql.SparkSession

/**
* Description:
* DataFrame 转换为Dataset
* DataSet的操作
*
* @Author: 留歌36
* @Date: 2019/2/25 20:15
*/
object DatasetApp extends App {
val spark = SparkSession.builder().appName(this.getClass.getSimpleName).master("local[2]").getOrCreate()
// 注意: 需要导入隐私转换
import spark.implicits._ val path = "f:\\infos.csv"
// spark 解析csv文件,
val DF = spark.read.option("header","true").option("inferSchema","true").csv(path)
DF.show() // DataFrame 转换为Dataset
val DS = DF.as[Infos]
// 常用的两种输出方式
DS.select(DS("name")).show()
DS.map(line => line.name).show() // spark.stop() case class Infos(id:Int, name:String,age:Int)
}

简单的csv文件:

infos.csv

id,name,age
1,zhangshan,21
2,lisi,32
3,wangwu,15
4,haha,23

更多相关小demo:每天一个程序:https://blog.csdn.net/liuge36/column/info/34094

最新文章

  1. 【读书笔记】iOS网络-优化请求性能
  2. 不要迷恋那些没技术含量的Linux发行版
  3. 实现开启和关闭android移动网络(转)
  4. Interview How to Count Squares
  5. MySQL ddl丢表
  6. Linq编程101例
  7. Storm概念介绍
  8. MYSQL 退出的三个方式
  9. 重复T次的LIS的dp Codeforces Round #323 (Div. 2) D
  10. Query DSL(1)
  11. JAVA线程与线程、进程与进程间通信
  12. dom 及bom
  13. Python 标准类库-日期类型之datetime模块
  14. 王之泰201771010131《面向对象程序设计(java)》第三周学习总结
  15. 微信开放平台创建android应用时怎么获取应用签名
  16. 【Git】 GitLab服务器社区版安装与配置
  17. Android Camera后台拍照
  18. 【洛谷P1272】道路重建
  19. RHEL7 -- 使用Chrony设置时间与时钟服务器同步
  20. Linux环境下 RabbitMQ 的下载与安装

热门文章

  1. 监听input实时输入
  2. ajax调用免费的天气API
  3. phpcms v9.6.0任意文件上传漏洞(CVE-2018-14399)
  4. HDU6223——2017ICPC沈阳G Infinite Fraction Path
  5. UVALive - 6667 Longest Chain CDQ3维问题
  6. codeforces 762 D. Maximum path(dp)
  7. hdu 1671 Phone List 字典树模板
  8. [HNOI2002]沙漠寻宝 题解
  9. 调用arcpy包批量进行矢量掩膜提取
  10. 如何完美激活pycharm2019.2.2