gpt4 book ai didi

apache-spark - 向数据框添加一个新列。新列我希望它是一个 UUID 生成器

转载 作者:行者123 更新时间:2023-12-04 13:26:19 25 4
gpt4 key购买 nike

我想向 Dataframe(一个 UUID 生成器)添加一个新列。

UUID 值类似于 21534cf7-cff9-482a-a3a8-9e7244240da7
我的研究:

我试过 withColumn spark中的方法。

val DF2 = DF1.withColumn("newcolname", DF1("existingcolname" + 1)

所以 DF2 将有额外的列 newcolname在所有行中添加 1。

我的要求是我想要一个可以生成 UUID 的新列。

最佳答案

你应该尝试这样的事情:

val sc: SparkContext = ...
val sqlContext = new SQLContext(sc)

import sqlContext.implicits._

val generateUUID = udf(() => UUID.randomUUID().toString)
val df1 = Seq(("id1", 1), ("id2", 4), ("id3", 5)).toDF("id", "value")
val df2 = df1.withColumn("UUID", generateUUID())

df1.show()
df2.show()

输出将是:
+---+-----+
| id|value|
+---+-----+
|id1| 1|
|id2| 4|
|id3| 5|
+---+-----+

+---+-----+--------------------+
| id|value| UUID|
+---+-----+--------------------+
|id1| 1|f0cfd0e2-fbbe-40f...|
|id2| 4|ec8db8b9-70db-46f...|
|id3| 5|e0e91292-1d90-45a...|
+---+-----+--------------------+

关于apache-spark - 向数据框添加一个新列。新列我希望它是一个 UUID 生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37231616/

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