как рассчитать количество в предложении groupBy, где оно также содержит пустые / пустые поля - PullRequest
0 голосов
/ 30 марта 2020

Я использую spark- sql -2.4.1v, с java8. У меня есть сценарий использования, где мне нужно подсчитать общее количество записей, участвующих в группе, по предложению. т.е. предположим, что я делаю в среднем с группой. Мне также нужно подсчитать количество записей в этой группе по.

Если я посчитаю (col) как total_count, avg (col) как среднее значение по col (год), то это не учитывает поле col, пустое , Как включить пустые поля столбцов в total_count?

1 Ответ

1 голос
/ 31 марта 2020

groupBy игнорирует пустые столбцы. Чтобы включить эти столбцы, необходимо присвоить значения этим пустым ячейкам. Это можно сделать с помощью df.na.fill. Используя это, вы можете назначить значение по умолчанию для этих столбцов (0, если вы хотите включить их в среднее значение или сумму; «some_sample_string», если это столбец типа строки и т. Д.). После заполнения, вы можете применить операцию groupBy для получения желаемого результата.

См. Код ниже:

val new_df = df.na.fill(0, Seq("column_list"))
            .na.fill("sample_string", Seq("string_column_list"))

Теперь вы можете использовать new_df для выполнения ваших расчетов. Надеюсь, это поможет.

...