Совпадение предметов из 2 разных счетчиков - PullRequest
0 голосов
/ 01 ноября 2019

У меня есть выходы от 2 счетчиков:

counter1: (a:1, e:4, x:2)
counter2: (x:5, a:8, e:4)

Я хочу этот вывод:

a: 1/8, e: 4/4, x: 2/5

Любые предложения о том, как сопоставить i с их соответствующими счетчиками в обоих счетчиках иделить?

Это всего лишь пример, мои фактические данные состоят из 10000 переменных.

1 Ответ

0 голосов
/ 01 ноября 2019

Вы можете перебирать счетчики:

from collections import Counter
counter1 = Counter(['a'] + ['e'] * 4 + ['x'] * 2)
counter2 = Counter(['x'] * 5 + ['a'] * 8 + ['e'] * 4)
for k in counter1 : 
    counter1[k] = counter1[k]/counter2[k]

Это предполагает, что каждый ключ ('k') в counter1 появляется в counter2, иначе вы столкнетесь с ошибкой деления на ноль. Счетчики похожи на dicts тем, что вы можете перебирать ключи и значения с помощью counter1.items (). Обратите внимание, что если вы не хотите обновлять counter1, вы можете инициализировать новый счетчик и обновить его значения.

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