У меня есть ввод spark-dataframe
с именем df
как,
+---------------+----+----+----+
|Main_CustomerID| P1| P2| P3|
+---------------+----+----+----+
| 101| 1|null| 2|
| 102|null|null| 3|
| 103| 1| 1|null|
+---------------+----+----+----+
Мне нужно заменить null
значения df
на 0
. Я достиг этого,
val columnsListSeq = df.columns.toSeq
var newDF = df
for (index <- columnsListSeq) {
newDF = newDF.na.fill(0, Seq(index))
}
Мой результат dataframe
,
+---------------+---+---+---+
|Main_CustomerID| P1| P2| P3|
+---------------+---+---+---+
| 101| 1| 0| 2|
| 102| 0| 0| 3|
| 103| 1| 1| 0|
+---------------+---+---+---+
Но мне нужно использовать оптимизированное решение, чем это for loop
. Как я могу это сделать?