Spark:将元组的 WrappedArray 转换为字符串
Spark: Converting WrappedArray of tuples to a string
我有一个 Spark 数据框,其列具有 array<struct<_1:string,_2:string>>
数据类型和以下示例数据:
WrappedArray([Book1,Title1], [Book2,Title2], [Book3,Title3])
我想将此列从元组的 WrappedArray 转换为字符串
这是所需的输出:
Book1/Title1 Book2/Title2 Book3/Title3
我尝试了以下 udf 传递数据帧的那一列,但它没有用:
val unwraparr = udf ((x: mutable.WrappedArray[(String, String)]) => x.map { case (val1, val2) => val1 + "/" + val2 })
这样试试:
import org.apache.spark.sql.Row
(x: Seq[Row]) => x.map { case Row(val1: String, val2: String) => val1 + "/" + val2 })
我有一个 Spark 数据框,其列具有 array<struct<_1:string,_2:string>>
数据类型和以下示例数据:
WrappedArray([Book1,Title1], [Book2,Title2], [Book3,Title3])
我想将此列从元组的 WrappedArray 转换为字符串
这是所需的输出:
Book1/Title1 Book2/Title2 Book3/Title3
我尝试了以下 udf 传递数据帧的那一列,但它没有用:
val unwraparr = udf ((x: mutable.WrappedArray[(String, String)]) => x.map { case (val1, val2) => val1 + "/" + val2 })
这样试试:
import org.apache.spark.sql.Row
(x: Seq[Row]) => x.map { case Row(val1: String, val2: String) => val1 + "/" + val2 })