首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >组合(不是sql连接)2个spark数据帧

组合(不是sql连接)2个spark数据帧
EN

Stack Overflow用户
提问于 2019-04-11 03:48:37
回答 2查看 21关注 0票数 0

我有两个很大的数据帧,下面是示例。

第一

代码语言:javascript
复制
firstnames|lastnames|age
tom|form|24
bob|lip|36
....

第二

代码语言:javascript
复制
firstnames|lastnames|age
mary|gu|24
jane|lip|36
...

我想把这两个数据帧合并成一个看起来像这样的:

代码语言:javascript
复制
firstnames|lastnames|age
tom|form|24
bob|lip|36
mary|gu|24
jane|lip|36
...

现在我可以把它们都写出来,然后一起读,但这是一个巨大的浪费。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-04-11 06:56:30

如果两个数据帧在结构上是相同的,那么它就是直接的-union()

代码语言:javascript
复制
df1.union(df2)

如果任何dataframe有任何缺失列,那么您需要在dataframe中的特定列位置添加虚拟列,否则联合将抛出列不匹配异常。在下面的示例中,df1中缺少列'c3‘,因此我在最后一个位置添加了df1中的虚拟列。

代码语言:javascript
复制
from pyspark.sql.functions import lit

df1.select('c1','c2',lit('dummy')).union(df2.select('c1','c2','c3'))
票数 1
EN

Stack Overflow用户

发布于 2019-04-11 03:53:16

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55620286

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档