var rtn = df.select(
col(colmap.get("AAAAA")) as "AAAAA",
lit(colmap.get("BBBBB")) as "BBBBB",
col(colmap.get("CCCCC")) as "CCCCC",
col(colmap.get("DDDDD")) as "DDDDD"
)
.where(col("AAAAA").isNotNull && col("BBBBB").isNotNull && col("CCCCC").isNotNull && col("DDDDD").isNotNull)
rtn.show()
Возврат dataframe все еще имеет несколько значений нуля. Я делаю неправильно?Spark - Dataframe с несколькими состояниями
Выходной ток
+--------+-----------+-----------
|AAAAA|BBBBB|CCCCC|DDDDD|EEEEE|
+--------+-----------+-----------
|A11111|B12345|C1111|D11111| |
|A22222|B12345|C2222|D22222| |
|A33333|B12345|C3333|D33333|E11111|
|A44444|B12345|C4444|D44444| |
|A55555|B12345|C5555|D55555|E11111|
Мой ожидается выход
+--------+-----------+-----------
|AAAAA|BBBBB|CCCCC|DDDDD|EEEEE|
+--------+-----------+-----------
|A11111|B12345|C1111|D11111|E11111|
|A22222|B12345|C2222|D22222|E11111|
|A33333|B12345|C3333|D33333|E11111|
|A44444|B12345|C4444|D44444|E11111|
|A55555|B12345|C5555|D55555|E11111|
Существует еще некоторое нулевое значение столбца EEEEE. DataFrame, где условие, похоже, не работает должным образом.
Не могли бы вы уточнить, что вы делаете, вместо того, чтобы сбрасывать код? Также укажите примерные данные и ожидаемый результат. – mtoto
Вы не добавили столбец EEEEE в поле where –