spark dataframe 一列分隔多列,一列分隔多行(scala)
关于spark dataframe ,这里介绍三种实用中实现可能比较麻烦的操作,首先上原始数据集 mRecord:
一,合并content列,将name相同的content合并到一行,用逗号隔开:
mRecord.createOrReplaceTempView("test");val Df1 = sparkSQL.sql("select name,concat_ws(',',collect_set(content)) as contents from test group by name");Df1.show(false);
结果如下:
二、将contents列的内容根据逗号分隔成三列:
val Df2 = Df1.withColumn("splitcol",split(col("contents"), ",")).select(col("splitcol").getItem(0).as("col1"),col("splitcol").getItem(1).as("col2"),col("splitcol").getItem(2).as("col3")).drop("splitcol");Df2.show(false);
结果如下:
三、将一中的contents还原最初状态,及将一列的内容根据逗号分隔成多行:
val Df3 = Df1.withColumn("arrayCol",split(col("contents"),",")).withColumn("expCol",explode(col("arrayCol")));Df3.show(false);
结果如下:
注意expCol列的内容
spark dataframe 一列分隔多列,一列分隔多行(scala)相关推荐
- java创建hbase多个列族_Spark:DataFrame写HFile (Hbase)一个列族、一个列扩展一个列族、多个列...
在上一篇博文中遗留了一个问题,就是只能处理DataFrame 的一行一列,虽然给出一个折中的办法处理多个列,但是对于字段多的DataFrame却略显臃肿,经过我的研究,实现了从一个列族.一个列到一个列 ...
- python分两列输出_Pandas实现一列数据分隔为两列
分割成一个包含两个元素列表的列 对于一个已知分隔符的简单分割(例如,用破折号分割或用空格分割).str.split() 方法就足够了 . 它在字符串的列(系列)上运行,并返回列表(系列). >& ...
- R语言把dataframe数据转化为tibble格式、查看每个数据列的缺失值个数、使用数据列的均值对数据列的缺失值进行填充
R语言把dataframe数据转化为tibble格式.查看每个数据列的缺失值个数.使用数据列的均值对数据列的缺失值进行填充 目录
- pandas使用dropna函数删除dataframe中全是缺失值的数据列(drop columns with all missing values in dataframe)
pandas使用dropna函数删除dataframe中全是缺失值的数据列(drop columns with all missing values in dataframe) 目录
- pandas使用query函数删除dataframe中某一列数值小于某一特定值的行(remove dataframe rows baed on column value)
pandas使用query函数删除dataframe中某一列数值小于某一特定值的行(remove dataframe rows baed on column value) 目录
- pandas使用方括号[]或者loc函数、基于列名称或者列名称列表索引dataframe中的单个数据列或者多个数据列(accessing columns of a dataframe)
pandas使用方括号[]或者loc函数.基于列名称或者列名称列表索引dataframe中的单个数据列或者多个数据列(accessing columns of a dataframe using co ...
- pandas使用duplicated函数删除dataframe中重复列名称的数据列、默认保留重复数据列中的第一个数据列(removing duplicate columns in dataframe)
pandas使用duplicated函数删除dataframe中重复列名称的数据列.默认保留重复数据列中的第一个数据列(removing duplicate columns in dataframe) ...
- pandas在dataframe指定位置添加新的数据列、使用insert函数
pandas在dataframe指定位置添加新的数据列.使用insert函数 目录 pandas在dataframe指定位置添加新的数据列.使用insert函数 #仿真数据
- pandas使用iloc函数基于dataframe数据列的索引抽取单列或者多列数据、其中多列索引需要嵌入在列表方括号[]中、或使用:符号形成起始和终止范围索引
pandas使用iloc函数基于dataframe数据列的索引抽取单列或者多列数据.其中多列索引需要嵌入在列表方括号[]中.或使用:符号形成起始和终止范围索引 目录
最新文章
- python以某种编码进行打印_如何在一场面试中展现你对Python的coding能力?
- 【安全工具】浅谈编写Java代码审计工具
- 客制化键盘键位修改_可以用很漂亮形容的一把键盘,差一步就完美
- 10.傅里叶变换——傅里叶变换、计算傅里叶变换_3
- pow python用法菜鸟_pow在python中的含义及用法
- python socket清空接受区_用 Python 开发一个 「聊天室」
- python3之http.server模块
- excel如何隔行填充颜色
- Walking Robot Simulation
- 如何制作PE系统盘?
- html固定单元格位置,固定表格布局
- 用python给女朋友惊喜_怎样用Python讨您的女朋友欢心(附源码)?女孩很好哄的嘛! zt...
- 傅里叶变换求解 KdV 方程
- 关于电子科技大学内共享单车使用的调查报告
- 《魔兽世界》国服团队正与新合作方洽谈;爆苹果将允许第三方应用商店替代 App Store;Vite 4.0发布|极客头条
- Delphi名称的由来(原作:Borland公司Danny Thorpe)
- Js判断ie浏览器版本
- 如何学习Android及如何利用android来赚钱
- 《中国高血压防治指南2010》学习笔记-完成
- 手机端网站服务器软件,手机端远程连接服务器的软件
热门文章
- 计算机vb中的缺省是什么意思,请问缺省.既然缺省的意思为默认可是为什么不 – 手机爱问...
- 小程序实现漂亮的个人中心版面
- 程序设计-在校整理-06 最常公共子序列与子串+2048小游戏+KNN简单实例
- 2021年新媒体运营不可缺少的24大类工具!
- 计算机应用编程师职业指导,计算机应用个人职业生涯规划书.doc
- 软件设计师(八)汇总-选择题
- 【计划表合集】学习计划表/时间表/打卡表/理财表/读书记录/生活计划表等合集
- 微信营销软件 php下载,北牧微信营销系统CMS企业版 php版免费版_北牧微信营销系统CMS企业版 php版PC版下载-东乐软件网...
- 作为程序员,我将如何教育自己的孩子
- 解决ubuntu无法显示中文拼音