sparkSql agg用法,样例代码

 def main(args: Array[String]): Unit = {val spark = SparkSession.builder().appName("JoinCoreApiTest").master("local").getOrCreate()val sc = spark.sparkContextsc.setLogLevel("ERROR")import spark.implicits._val caseIdr = sc.makeRDD(Array(("1", "a1"),("1", "a4"), ("2", "a2"), ("3", "a3"))).toDF("caseId", "r")caseIdr.show(false)val trans = sc.makeRDD(Array(("a1","x1"),("a2","x2"),("a3","x3"),("a4", "x4"))).toDF("r","x")trans.show(false)val joinRdd = caseIdr.join(trans,Seq("r"),"inner")joinRdd.show(false)import org.apache.spark.sql.functions._val value = joinRdd.groupBy("caseId").agg(count("r").as("cou"),collect_list("r").as("rs"),collect_list("x").as("xs")).show(false)}

运行结果展示:

+------+---+
|caseId|r  |
+------+---+
|1     |a1 |
|1     |a4 |
|2     |a2 |
|3     |a3 |
+------+---++---+---+
|r  |x  |
+---+---+
|a1 |x1 |
|a2 |x2 |
|a3 |x3 |
|a4 |x4 |
+---+---++---+------+---+
|r  |caseId|x  |
+---+------+---+
|a3 |3     |x3 |
|a4 |1     |x4 |
|a2 |2     |x2 |
|a1 |1     |x1 |
+---+------+---++------+---+--------+--------+
|caseId|cou|rs      |xs      |
+------+---+--------+--------+
|3     |1  |[a3]    |[x3]    |
|1     |2  |[a4, a1]|[x4, x1]|
|2     |1  |[a2]    |[x2]    |
+------+---+--------+--------+

sparksql agg用法相关推荐

  1. python agg函数_Python Pandas Series.agg()用法及代码示例

    Python是进行数据分析的一种出色语言,主要是因为以数据为中心的python软件包具有奇妙的生态系统. Pandas是其中的一种,使导入和分析数据更加容易. Pandas Series.agg()用 ...

  2. sparksql join用法

    package com.ws.sparksql import org.apache.spark.sql.{DataFrame, Dataset, SparkSession} /*** sparksql ...

  3. pyspark---agg的用法

    文章目录 group by agg用法 dataframe agg 直接计算 group by agg用法 pyspark中的agg聚合运算应该才能达到聚合字段的目的, apply的运算都是一行一行的 ...

  4. 基于Spark的大规模推荐系统特征工程

    分享嘉宾:陈迪豪 第四范式 架构师 编辑整理:刘璐 出品平台:第四范式天枢.DataFunTalk 导读:特征工程在推荐系统中有着举足轻重的作用,大规模特征工程处理的效率极大的影响了推荐系统线上的性能 ...

  5. 利用SparkSQL(java版)将离线数据或实时流数据写入hive的用法及坑点

    1. 通常利用SparkSQL将离线或实时流数据的SparkRDD数据写入Hive,一般有两种方法.第一种是利用org.apache.spark.sql.types.StructType和org.ap ...

  6. python:dataframe groupby后agg、apply、transfrom用法

    import pandas as pd data = pd.DataFrame({'name':['wencky','stany','barbio','barbio'],'age':[29,29,3, ...

  7. SPARK-SQL - group分组聚合api,agg()

    准备orders.json文件 {"id":"1", "userId":"1", "userName" ...

  8. ppython3 关于agg函数的用法(一般与groupby函数连用)

    为了了解agg这个函数 我们先以下数据集作为研究对象 (截图的一部分) agg:这里一般都与groupby函数作为比较 pandas引入了agg函数,它提供基于列的聚合操作.而groupby可以看做是 ...

  9. 定量分析---频率分布直方图(groupby,agg,round具体用法)

    对数据集"捞起生鱼片"做定量分析 穿插pandas的cut,groupby,agg方法 定量数据分布分析 对于定量数据而言,选择组数与组宽是做评率分布分析时最主要的问题,步骤如下: ...

最新文章

  1. java实现aop的几种方式_SpringAOP 的三种实现方式
  2. 网络推广外包——还记得网络推广外包中的site收录吗?
  3. WDS使用捕获映像制作企业自定义映像
  4. 解决安卓中单个dex方法数超过65535的方法
  5. 【爬虫】Scrapy爬取腾讯社招信息
  6. 关于ax+by+cz的最大不可表数
  7. (035) Linux之其他命令
  8. MapReduce Example
  9. php字符串里含有全角符号,php半角转全角字符函数
  10. 白事碰上红事,徐渭应景吟诗
  11. phpStudy JspStudy 2016 更新下载,新版支持php7.0
  12. Ubuntu/Win10双系统安全删除Ubuntu的方法
  13. VS code如何下载并配置C语言(详细)
  14. 设计模式(十一)策略模式
  15. zTree简单暴力修改图标样式
  16. Setup Factory导入注册表时丢失部分语句
  17. HDOJ/HDU 2551 竹青遍野(打表~)
  18. 关于锐捷认证与傻瓜路由器
  19. Storj白皮书v3最全面解读,Docker创始人的加入能否扳倒AWS S3
  20. Python数据处理课程设计-房屋价格预测

热门文章

  1. 阿里云产品推荐——轻量应用服务器
  2. 百度超级链作为专班核心成员 参与北京市政务区块链顶层设计
  3. java 邮件中文标题显示问号?
  4. Arduino uno控制蜂鸣器播放音乐(以《大鱼》为例)
  5. 推荐一些经典的炒股书籍
  6. 解决latex图片浮动体过多的报错:Output loop---100 consecutive dead cycles和Too many unprocessed floats
  7. 原生js实现文本复制功能
  8. 如何在客户端连接MySQL服务呢???
  9. Python+Selenium2(上)
  10. Graphhopper OSM地图路径规划导航 离线搭建教程