DataFrame不同风格比较

一,DSL风格语法

//加载数据
val rdd1=sc.textFile("/person.txt").map(x=>x.split(" "))
//定义一个样例类
case class Person(id:String,name:String,age:Int)
//把rdd与样例类进行关联
val personRDD=rdd1.map(x=>Person(x(0),x(1),x(2).toInt))
//把rdd转换成DataFrame
val personDF=personRDD.toDF//打印schema信息
personDF.printSchema//展示数据
personDF.show//查询指定的字段
personDF.select("name").show
personDF.select($"name").show
personDF.select(col("name").show//实现age+1personDF.select($"name",$"age",$"age"+1).show   //实现age大于30过滤personDF.filter($"age" > 30).show//按照age分组统计次数personDF.groupBy("age").count.show //按照age分组统计次数降序personDF.groupBy("age").count().sort($"count".desc)show

二,SQL风格语法

//DataFrame注册成表
personDF.createTempView("person")//使用SparkSession调用sql方法统计查询
spark.sql("select * from person").show
spark.sql("select name from person").show
spark.sql("select name,age from person").show
spark.sql("select * from person where age >30").show
spark.sql("select count(*) from person where age >30").show
spark.sql("select age,count(*) from person group by age").show
spark.sql("select age,count(*) as count from person group by age").show
spark.sql("select * from person order by age desc").show

DataFrame不同风格比较相关推荐

  1. pandas强大的Python数据分析工具

    指数 模块 | 下一页 | 熊猫0.22.0文档 » 目录 什么是新的 安装 贡献给大熊猫 包概述 10分钟到熊猫 教程 食谱 数据结构简介 基本的基本功能 使用文本数据 选项和设置 索引和选择数据 ...

  2. Spark-学习笔记分享

    文章目录 前言 概述 Spark和MR的数据处理流程对比 Spark的组成示意图 Spark模块 Spark特点 Spark的运行模式 Spark官方测试案例 SparkWebUI Spark通用运行 ...

  3. Spark SQL概述,DataFrames,创建DataFrames的案例,DataFrame常用操作(DSL风格语法),sql风格语法

    一. Spark SQL 1. Spark SQL概述 1.1. 什么是Spark SQL Spark SQL是Spark用来处理结构化数据的一个模块,它提供了一个编程抽象叫做DataFrame并且作 ...

  4. 【大数据开发】SparkSQL——RDD、DataFrame、DataSet相互转换、DSL常用方法、SQL风格语法、Spark读写操作、获取Column对象的方式

    take,takeAsList是Action操作 limit⽅法获取指定DataFrame的前n⾏记录,得到⼀个新的DataFrame对象.和take与head不同的是,limit⽅法不是Action ...

  5. python打印自动换行如何解决_解决python DataFrame 打印结果不换行问题

    解决python DataFrame 打印结果不换行问题 如下所示: 加入代码: pd.set_option('display.width', 5000) 补充知识:Python 实现不换行打印字符的 ...

  6. spyder中绘图无法显示负号_matlibplot+seaborn绘图风格交叉使用

    matlibplot+seaborn绘图风格交叉使用 遇到问题:想要图一的图案,但是想要seaborn中默认的风格绘制 图一 一开始的想法是seaborn既然升级版matlibplot,应该支持直接修 ...

  7. python:dataframe

    相关:Series一些函数用法 目录 DataFrame reindex drop loc和iloc apply 排序 汇总统计和计算 缺失值处理 数据合并 数据转换:对数据的过滤.清理以及其他的转换 ...

  8. spark sql定义RDD、DataFrame与DataSet

    RDD 优点: 编译时类型安全 编译时就能检查出类型错误 面向对象的编程风格 直接通过类名点的方式来操作数据 缺点: 序列化和反序列化的性能开销 无论是集群间的通信, 还是IO操作都需要对对象的结构和 ...

  9. Spark RDD与DataFrame

    1. DataFrame概念 DataFrame的前身是SchemaRDD,从Spark 1.3.0开始SchemaRDD更名为DataFrame.与SchemaRDD的主要区别是:DataFrame ...

最新文章

  1. mysql-5.5.25_Linux下安装Mysql-5.5.25
  2. 吴恩达:告别大数据,AI需要高质量小数据!
  3. 第 2 章 常量、变量和表达式
  4. Ajax Toolkit AutoComplete 几种用法
  5. Django加载静态文件
  6. Leetcode 202.快乐数(哈希容器来检测是否出现重复)
  7. UVA - 232 ​​​​​​​Crossword Answers
  8. git提交到github总是要输入密码_GitHub不为人知的秘密
  9. JS中对数组元素进行增、删、改、查的方法,以及其他方法
  10. E/MediaPlayer: Should have subtitle controller already set
  11. PAT-乙级-1012. 数字分类 (20)
  12. Linux入门-网络实验3.3
  13. Sql三张表的连接查询
  14. c#高级编程(第八版)-第六章数组随笔
  15. 计算机c盘内存怎么转给d盘,C盘空间太大怎么把空间转到D盘或E盘
  16. 计算机已从异常关机中恢复,win7系统经常遇到“windows已从异常关机中恢复”的解决方法...
  17. xctf攻防世界 MISC高手进阶区 我们的秘密是绿色的
  18. Android addview—动态添加view
  19. Bellman-Ford与spfa算法
  20. sklearn中实现多分类任务(OVR和OVO)

热门文章

  1. 软件工程 团队作业 #9
  2. 进程调度实验_Linux应用编程之进程的PID与PPID
  3. javaee 中文帮助文档_从中游公司跳槽阿里必知:K8s、Nginx、Redis、微服务面试文档...
  4. hash地址_深入浅出一致性Hash原理
  5. 雷云3灯光配置文件_雷蛇的哪种键盘最适合入手?3款最佳雷蛇键盘推荐。
  6. c字符串中包含双引号_必须知道的C语言知识细节:单引号和双引号正确用法
  7. php改名下载,PHP如何给上传的文件改名
  8. oracle plsql 到处dbf_plsql 导出oracle数据库
  9. android 手机壁纸源码,Android工程实现换壁纸功能【附源码】
  10. python编写add函数求和_为什么python不利用__iadd__来实现求和和链接运算符?