Spark: Convert column of string to an array

前端 未结 3 1318
南笙
南笙 2020-12-24 04:46

How to convert a column that has been read as a string into a column of arrays? i.e. convert from below schema

scala> test.printSchema
root
 |-- a: long (         


        
3条回答
  •  刺人心
    刺人心 (楼主)
    2020-12-24 04:55

    There are various method,

    The best way to do is using split function and cast to array

    data.withColumn("b", split(col("b"), ",").cast("array"))
    

    You can also create simple udf to convert the values

    val tolong = udf((value : String) => value.split(",").map(_.toLong))
    
    data.withColumn("newB", tolong(data("b"))).show
    

    Hope this helps!

提交回复
热议问题