[英]Spark 2.0.1: split JSON Array Column into ArrayType(StringType)
[英]Cast Stringtype to ArrayType
是否可以將 StringType 列轉換為 spark 數據框中的 ArrayType 列?
df.printSchema()
給出了這個
架構 ->
一個:字符串(可為空=真)
現在我想將其轉換為
a:數組(可為空=真)
正如Elisiah評論的那樣,您必須拆分字符串。 您可以使用 UDF:
df.printSchema
import org.apache.spark.sql.functions._
val toArray = udf[Array[String], String]( _.split(" "))
val featureDf = df
.withColumn("a", toArray(df("a")))
featureDF.printSchema
給出輸出:
root
|-- a: string (nullable = true)
root
|-- a: array (nullable = true)
| |-- element: string (containsNull = true)
簡單地將任何column
包裝在functions.array
另一種選擇。
df.withColumn("a", functions.array(col("a")))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.