gpt4 book ai didi

scala - 在spark scala中将1列拆分为3列

转载 作者:行者123 更新时间:2023-12-03 08:50:13 25 4
gpt4 key购买 nike

我在 Spark 中有一个使用 scala 的数据框,它有一个我需要拆分的列。

scala> test.show
+-------------+
|columnToSplit|
+-------------+
| a.b.c|
| d.e.f|
+-------------+

我需要将此列拆分为如下所示:
+--------------+
|col1|col2|col3|
| a| b| c|
| d| e| f|
+--------------+

我正在使用 Spark 2.0.0

谢谢

最佳答案

尝试:

import sparkObject.spark.implicits._
import org.apache.spark.sql.functions.split

df.withColumn("_tmp", split($"columnToSplit", "\\.")).select(
$"_tmp".getItem(0).as("col1"),
$"_tmp".getItem(1).as("col2"),
$"_tmp".getItem(2).as("col3")
)

这里要注意的重点是 sparkObject是您可能已经初始化的 SparkSession 对象。因此,(1)import 语句必须强制内联在代码中,而不是在类定义之前。

关于scala - 在spark scala中将1列拆分为3列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39255973/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com