apache-spark - 合并火花数据框中的两列以形成单列
问题描述
我有一个包含两列的 Spark 数据框;src_edge
和dest_edge
。我只是想创建新的 spark 数据框,以便它包含一个包含来自和id
的值的列。src_edge
dest_edge
src dst
1 2
1 3
我想创建df2
为:
id
1
1
2
3
如果可能的话,我也想创建df2
没有重复值。有谁知道如何做到这一点?
id
1
2
3
解决方案
array
使用和创建一个新列explode
以合并和展平两列。然后,要删除重复项,请使用dropDuplicates
:
from pyspark.sql.functions import array, explode
df2 = df.select(explode(array("src", "dst")).alias("id"))
.dropDuplicates()
推荐阅读
- python - 参考系的时间导数会产生误差
- three.js - 如何在三个 JS 中更改多个视图的相机位置
- javascript - Webpack 抛出错误“您可能需要适当的加载器”以与打字稿作出反应
- javascript - JS Json 解析更快的替代方案
- spring - 如何使用 Reactor Flux 处理 CSV 文件并输出为 JSON
- c# - 可以自动运行和监视自定义 C++/C# 应用程序的多个实例吗?
- uart - PIC16F877A 与 SIM800L
- javascript - Javascript,将照片从相机(画布)存储到本地/服务器
- javascript - 如何使用 javasript 更改 woocommerce 结帐中的文本标签?
- excel - 如何使用 Oracle 查询将选择查询数据导出到 excel 文件中?