如何使用 Scala 数据框中的默认值填充数组中的空值?

问题描述 投票:0回答:1

我有一个包含数组列的数据框。它包含值列表以及空值。我想用其他值替换空值。

import spark.implicits._
val columns=Array("id", "subject")
val df1=sc.parallelize(Seq(
  (1, Array("eng","math",null,null))
  
)).toDF(columns: _*)

df1.printSchema
df1.show()
scala
1个回答
0
投票

如果为空,请使用

IFNULL
函数替换为默认值。检查下面的代码。

df1
.selectExpr(
    "id", 
    "TRANSFORM(subject, s -> IFNULL(s, '0')) as subject"
).show(false)
+---+-----------------+
|id |subject          |
+---+-----------------+
|1  |[eng, math, 0, 0]|
+---+-----------------+
© www.soinside.com 2019 - 2024. All rights reserved.