для более подробного объяснения.
я есть массив, и я хочу подсчитать вхождение каждого элемента в массиве.
Мне удалось использовать функцию карты, чтобы создать список кортежей.
def mapper(a):
return (a, 1)
r = list(map(lambda a: mapper(a), arr));
//output example:
//(11817685, 1), (2014036792, 1), (2014047115, 1), (11817685, 1)
Я ожидаю, что функция сокращения может помочь мне сгруппировать счетчики по первому числу (id) в каждом кортеже. Например:
(11817685, 2), (2014036792, 1), (2014047115, 1)
Я пытался
cnt = reduce(lambda a, b: a + b, r);
и некоторые другие способы, но все они не справляются.
НОТА Спасибо за все советы по другим способам решения проблем, но я просто изучаю Python и рассказываю, как реализовать сокращение карты, и я значительно упростил свою реальную бизнес-задачу, чтобы ее было легко понять, поэтому, пожалуйста, любезно покажи мне правильный способ сделать карту-уменьшить.