pyspark - value_counts для нескольких столбцов эффективно - PullRequest
0 голосов
/ 04 ноября 2019

В pyspark я хочу подсчитать различные значения и их соответствующие значения для всех столбцов. Предположим, у меня есть следующая таблица, теперь я ищу соответствующие цифры

|  A  |  B  |  C  |  D  |
|-----|-----|-----|-----|
|  A1 |  B1 |  C1 |  D1 |
|  A1 |  B2 |  C1 |  D1 |
|  A1 |  B2 |  C2 |  D1 |
|  A2 |  B3 |  C2 |  D2 |
|  A2 |  B3 |  C2 |  D2 |
|  A3 |  B4 |  C3 |  D3 |

Затем я ищу вывод

{A1 : 3, A2 : 2, A3 : 1}
{B1 : 1, B2 : 2, B3 : 2, B4 : 1}
{C1 : 2, C2 : 3, C3 : 1}
{D1 : 3, D2 : 2, D3 : 1}

PS Я могу перебрать все столбцыи сделайте df.groupBy('columnname').count() для каждого столбца, но это займет много времени. Есть ли эффективный способ сделать это гораздо лучше?

Кроме того, не стесняйтесь использовать тот, который работает лучше всего - rdd или data frame

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...