Ну так поэтому я и накатал этот пост, чтобы узнать рыночную цену за свой труд.Ты так и не понял, ну да ладно. Для тебя рынок это товар/услуга и ценник. Рынок это состояние, с изменяющимися прайсами. Ты же видел финансовые рынки где прайс меняется. Такси, булочная, фриланс, и т.д. кроме скорости изменения прайса (нахождение справедливой цены по отношению к текущему состоянию рынка), ни чем не отличается.
try:
summary[category]['Count', indx_stop[stop]] = top_list(vect, train_data, 20)
except IndexError:
pass И так же ниже в коде, где ты подобную оперцию делаешь. Но все это очень плохой код, мы делаем то что делать не должны. Лишь бы запустилось, все надо переписывать. Фундаментально попытка не правильная.
Вот так выглядит каждое значение твоего словаря (фрейм), которые ты пытаешься заполнить, это что бы ты понимал что происходит. Это к слову о декомпозиции.
summary[category] = pd.DataFrame(columns=mux) Вот это что такое? Это каждое значение твоего словаря фрейм еще и с иерархичесиким индексами.
return (a:= a+1) при условии что а в области видимости, потому что всегда выполняется сначала то что справа от знака присваивания. А тут вскрылся нюанс, так что даже наоборот хорошо.
В зависимости от количества данных, это может задача для одного или целой команды специалистов. Это я так очень-очень упрощенно, что бы хоть какая то идея была у вас. Ну и это не единственный возможный подход, их много.