如何解决Spark :在 Spark API 中是否有与 Spark SQL 的 LATERAL VIEW 等效的东西?
标题说明了一切:
Spark API 中是否有与 SPARK SQL LATERAL VIEW
命令等效的命令,以便我可以从包含多列数据的结构的 UDF 生成列,然后将列横向分布在结构到父数据帧作为单独的列?
相当于 df.select(expr("LATERAL VIEW udf(col1,col2...coln)"))
解决方法
我通过将 udf 选入一列解决了这个问题:
val dfWithUdfResolved = dataFrame.select(calledUdf()).as("tuple_column"))
...然后...
dfWithUdfResolved
.withColumn("newCol1",$"tuple_column._1")
.withColumn("newCol2",$"tuple_column._2")
// ...
.withColumn("newColn",$"tuple_column._n")
基本上使用元组表示法将列中的值提取到新的离散列中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。