在Spark Scala中的DataFrame列中爆炸元组阵列



我想从dataframe

爆炸阵列[(int,int(]列

输入:

colA newCol
1     [[1a, 2],[3c, 5u]]
2     [[1c, 9m], [5e, 7l]]

输出:

colA newCol
1     1a
1     3c
2     1c
2     5e

这是我的方法。

+----+--------------------+
|col1|col2                |
+----+--------------------+
|1   |[[1a, 2b], [3c, 5u]]|
|2   |[[1c, 9m], [5e, 7l]]|
+----+--------------------+

这是您的数据框架和

df.withColumn("t", explode($"col2")).selectExpr("col1", "t[0]").show

我的代码结果

+----+----+
|col1|t[0]|
+----+----+
|   1|  1a|
|   1|  3c|
|   2|  1c|
|   2|  5e|
+----+----+

最新更新