Как преобразовать Pyspark DataFrame в необходимый JSON в определенном формате - PullRequest
0 голосов
/ 23 октября 2019

вот мой фрейм данных pyspark выглядит так:

+------------+-----+----------+--------+
|session_id  |url  |zip_code  |os_sys  |
+------------+-----+----------+--------+ 
| 1          | a   | 10010    | ios    |
| 1          | b   | 10010    | ios    |
| 1          | c   | 10010    | ios    |
| 1          | d   | 10010    | ios    |
| 2          | e   | 10013    | win    |
| 2          | f   | 10013    | win    |

я хочу преобразовать данные в определенный формат json:

[ 
1:{
  session_hist: [{url: a}, {url: b}, {url: c},{url: d}], 
  zip_code: 10010, 
  os_sys: ios
  }, 
2:{
  session_hist: [{url: e},{url: f}],
  zip_code: 10013,
  os_sys: win
  }
]

эта проблема бросила мне вызов, так как мне сначала нужноагрегировать по session_id, тогда мне нужно уменьшить значения строк zip_code и os_sys до одного в каждой группе session_id.

Обратите внимание, что мои данные очень большие, миллиарды строк. Я не думаю, что зацикливание строк может быть эффективным.

Не могли бы вы поделиться идеями?

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