在 Spark 中加入数据框

Posted

技术标签:

【中文标题】在 Spark 中加入数据框【英文标题】:Join Dataframes in Spark 【发布时间】:2016-08-04 14:36:54 【问题描述】:

我使用下面的代码在 spark 中加入了两个 Dataframes -

数据框有:expDataFrame、accountList

val expDetails = expDataFrame.as("fex").join(accountList.as("acctlist"),$"fex.acct_id" === $"acctlist.acct_id", "inner")

现在我正在尝试同时显示两个数据框中的 acct_id

我已经完成了下面的代码 -

expDetails.select($"fex.acct_id",$"acct_id.acct_id").show

但获得相同的列名两次 acct_id

我想要两个唯一的列名,例如 fex_acct_id, acctlist_acct_id 来标识来自哪个数据框的列。

【问题讨论】:

【参考方案1】:

您只需使用as or alias 方法为列添加别名。这样就可以了:

expDetails.select(
  $"fex.acct_id".as("fex_acct_id"),
  $"acct_id.acct_id".as("acctlist_acct_id")
).show

【讨论】:

以上是关于在 Spark 中加入数据框的主要内容,如果未能解决你的问题,请参考以下文章

如何在JAVA中加入没有重复列的Spark数据框

在 Spark Scala 中加入后创建嵌套数据

在 Spark 中加入数据集

在 Spark 中加入倾斜的数据集?

使用用户定义的函数在 spark 中加入数据集时需要填充其他信息

在 Spark Java API 中加入行数据集