Junior — Senior
34
Подсчёт повторяемости уникальных комбинаций названия события и пользователя
Компании, где спрашивали:
Туту
Условие задачи
Необходимо определить, как часто встречаются отдельные уникальные сочетания полей "title" и "user_id" в массиве событий. По каждому такому сочетанию нужно посчитать количество его появлений.
{
"events": [
{
"time": "2022-06-17 08:54:03",
"title": "search",
"user_id": null,
"ref": "main",
"session_id": "a2"
},
{
"time": "2022-06-17 23:19:33",
"title": "main",
"user_id": null,
"ref": null,
"session_id": "b4"
},
{
"time": "2022-06-20 13:02:44",
"title": "success",
"user_id": null,
"ref": "seats",
"session_id": "b1"
},
{
"time": "2022-06-20 14:45:43",
"title": "search_click",
"user_id": 123,
"page": "main",
"session_id": "a1"
},
{
"time": "2022-06-20 14:46:49",
"title": "main",
"user_id": 123,
"ref": null,
"session_id": "a1"
},
{
"time": "2022-06-17 23:21:31",
"title": "search",
"user_id": null,
"ref": "main",
"session_id": "b5"
},
{
"time": "2022-06-18 13:02:44",
"title": "main",
"user_id": null,
"ref": "seats",
"session_id": "c2"
},
{
"time": "2022-06-18 14:47:03",
"title": "seats",
"user_id": 123,
"ref": "search",
"session_id": "d1"
},
{
"time": "2022-06-18 13:12:41",
"title": "search",
"user_id": null,
"ref": "seats",
"session_id": "c4"
},
{
"time": "2022-06-20 14:44:01",
"title": "chat_open",
"user_id": 123,
"page": "seats",
"session_id": "d1"
},
{
"time": "2022-06-20 14:46:32",
"title": "chat_send_message",
"user_id": 123,
"page": "seats",
"session_id": "d1"
},
{
"time": "2022-06-21 13:12:41",
"title": "seats",
"user_id": 34,
"ref": null,
"session_id": "c4"
},
{
"time": "2022-06-21 21:14:00",
"title": "success",
"user_id": null,
"ref": null,
"session_id": "b4"
}
]
}
В результате должна получиться структура, где ключом будет строка вида "title|user_id", а значением – количество её появлений в исходном массиве.