从 Spark 数据帧中的列生成非重复值



>我有一个如下所示的火花数据帧

id|name|age|sub
1 |ravi|21 |[M,J,J,K]

我不想在"sub"列上爆炸,因为它会创建另一组额外的行。我想从"sub"列生成唯一值并将其分配给新的列sub_unique。

我的输出应该是这样的

id|name|age|sub_unique
1 |ravi|21 |[M,J,K]
您可以使用

udf

val distinct = udf((x: Seq[String]) => if (s != null) x.distinct else Seq[String]())
df.withColumn("subm_unique", distinct($"sub"))

相关内容

  • 没有找到相关文章

最新更新