Вы можете сделать это следующим образом:
scala> val someDFWithName = Seq((1, "anu rag"), (2,"raj u"),(3, " ram "), (4, null), (5, "")).toDF("id", "name")
Теперь отфильтруйте пустые или нулевые значения и примените регулярное выражение для удаления дополнительного пробела:
scala> someDFWithName.filter(col("name") !== "").select(
| col("name"),
| regexp_replace(col("name"), " ", ""),
| length(col("name"))
| ).show()
Вывод будет:
+--------+-------------------------+------------+
| name|regexp_replace(name, , )|length(name)|
+--------+-------------------------+------------+
| anu rag| anurag| 7|
| raj u| raju| 5|
| ram | ram| 8|
+--------+-------------------------+------------+
Спасибо.