У меня есть набор данных с 2 столбцами.Один - это идентификатор клиента, а другой - список купленных продуктов.Данные отсортированы по идентификатору.Каждая строка представляет транзакцию.Я должен вытащить 20 лучших продуктов, представленных в большинстве транзакций.
Таким образом, данные могут выглядеть следующим образом:
ID |Product_List
1 |92
2 |88
2 |88, 89
2 |88, 91, 90
3 |130, 88, 90, 92
3 |130, 88, 90, 92
3 |130, 88, 91
3 |130, 88
3 |130, 88
Мне нужно получить топ-5 продуктов, которые покупаются с наибольшей частотой.Идентификаторы продуктов не повторяются в списке.
Я хочу избегать использования циклов for, и это действительно то, где я сейчас застрял.
Так что мой вывод будет:
Продукт |№ Txns
88 |8
130 |5
90 |3
92 |3
91 |2
Извинения, я не знаю, как отформатировать таблицу на этомЯ сделал это с помощью цикла for, распечатав каждый список в кучу столбцов, а затем просто запустив счетчик для всего этого, но это кажется очень неэффективным способом кодирования.Я не совсем понимаю, как работать с данными, где столбец состоит из списков, в идеале я хотел бы векторизовать такую операцию.