Spark中DataFrame的常用操作

前言

spark作为分布式计算框架,在工业界占据了比较主流的地位。spark同样也提供了DataFrame供用户使用。
本文介绍DataFrame的一些常用操作

操作

先来简单介绍主程序
json文件

{"name": "nian"}
{"name": "li","age": 34}
{"name": "qian","age": 24}

代码

scala> import org.apache.spark.sql.SparkSession
import org.apache.spark.sql.SparkSession

scala> val spark = SparkSession.builder().appName("parquet").master("local[*]").getOrCreate()

var df_testjson = spark.emptyDataFrame

# 读取json文件
scala> df_testjson = spark.read.json(s"/Users/test.json")

  • show() 显示信息
scala> df_testjson.show()

+----+----+
| age|name|
+----+----+
|null|nian|
|  34|  li|
|  24|qian|
+----+----+
  • printSchema(),打印出DataFrame 的模式(Schema)信息
scala> df_testjson.printSchema()

root
 |-- age: long (nullable = true)
 |-- name: string (nullable = true)
  • select(),选择部分列信息
scala> df_testjson.select("name").show()

+----+
|name|
+----+
|nian|
|  li|
|qian|

scala> df_testjson.select(df_testjson("name").as("username")).show()

+--------+
|username|
+--------+
|    nian|
|      li|
|    qian|
+--------+
  • filter :条件查询
scala> df_testjson.filter("age > 24").show()

+---+----+
|age|name|
+---+----+
| 34|  li|
+---+----+
  • groupBy : 分组
scala> df_testjson.groupBy("age").count().show()

+----+-----+
| age|count|
+----+-----+
|  34|    1|
|null|    1|
|  24|    1|
+----+-----+
  • orderBy :排序,默认升序,desc降序
scala> df_testjson.orderBy("age").show()

+----+----+
| age|name|
+----+----+
|null|nian|
|  24|qian|
|  34|  li|
+----+----+
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nsq_ai

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值