Рассчитать скалярное произведение между двумя словарями миллионы раз - PullRequest
0 голосов
/ 15 февраля 2020

У меня есть два словаря d1 = {'string1': number1, ..., 'string5 000 000': number5000000}, которые не меняются, и множество небольших словарей d_i = {'str1': num1, ..., ' str50 ': num50} (i = 2, 3, ..., несколько миллионов). Я хочу сделать точечное произведение между этими словарями, т.е. для каждого ключа в словаре d_i, который существует также в d_1, я хотел бы, чтобы их числа умножались, а затем добавлялись к сумме. Проблема в том, что первый словарь очень большой и миллионы маленьких словарей. Как мне сделать это быстро? Могу ли я использовать для этого несколько методов больших данных?

1 Ответ

0 голосов
/ 15 февраля 2020

Вы можете поместить свои данные в pandas фрейм данных, а затем сделать точечный продукт между рядами в фрейме данных. Это может быть быстрее, но в вашем случае я бы измерил, сколько времени потребуется для реализации python и pandas.

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