Вероятно, это дубликат, но каким-то образом я уже давно ищу:
Я хочу получить число нулей на строку в кадре данных Spark.Т.е.
col1 col2 col3
null 1 a
1 2 b
2 3 null
В конце должно быть:
col1 col2 col3 number_of_null
null 1 a 1
1 2 b 0
2 3 null 1
В общем, я хочу получить число раз, когда определенная строка или число появляется в строке фрейма данных искры.
Т.е.
col1 col2 col3 number_of_ABC
ABC 1 a 1
1 2 b 0
2 ABC ABC 2
Я использую Pyspark 2.3.0 и предпочитаю решение, не включающее синтаксис SQL.По какой-то причине я, кажется, не могу гуглить это.: /
РЕДАКТИРОВАТЬ: Предположим, у меня так много столбцов, что я не могу перечислить их все.
РЕДАКТИРОВАТЬ2: Я явно не хочу, чтобы решение для панд.
EDIT3: Решение, объясненное с помощью сумм или средств, не работает, так как выдает ошибки:
(data type mismatch: differing types in '((`log_time` IS NULL) + 0)' (boolean and int))
...
isnull(log_time#10) + 0) + isnull(log#11))