У меня есть словарь, который содержит значения, подобные этому {a: 3, b: 9, c: 88, d: 3} Я хочу рассчитать, сколько раз определенное число появляется в словаре , Например, в словаре выше 3 появляется дважды в словаре Пожалуйста, помогите написать Python скриптВычисление частоты значений в словаре
3
A
ответ
9
Вы должны использовать collections.Counter
:
>>> from collections import Counter
>>> d = {'a':3, 'b':9, 'c':88, 'd': 3}
>>> Counter(d.values()).most_common()
[(3, 2), (88, 1), (9, 1)]
1
Я хотел бы использовать defaultdict, чтобы сделать это (в основном более общий вариант счетчик). Это было с 2.4.
from collections import defaultdict
counter = defaultdict(int)
b = {'a':3,'b':9,'c':88,'d':3}
for k,v in b.iteritems():
counter[v]+=1
print counter[3]
print counter[88]
#will print
>> 2
>> 3
+2
Использовать 'itervalues' ... заметить, как' k' не используется в вашем фрагменте? –
Смежные вопросы
- 1. Вычисление частоты 5 в массиве
- 2. Вычисление частоты письма в Python
- 3. Вычисление суммы значений в словаре, которые существуют в общем списке
- 4. вычисление частоты слов в нескольких файлах
- 5. вычисление частоты появления в каждом столбце
- 6. Вычисление максимальной частоты слова в рубине
- 7. вычисление кодированной частоты кадров в H264
- 8. Искры: получение кумулятивной частоты от значений частоты
- 9. Вычисление максимальных значений с numpy
- 10. Массив значений в Словаре
- 11. Разделение значений в словаре
- 12. Список значений в словаре?
- 13. Добавление значений в словаре
- 14. Проверка значений в словаре
- 15. Вычисление значений в JTable
- 16. Подсчет частоты перечисления значений
- 17. подсчета частоты значений в R
- 18. Вычисление частоты букв, включая двойные буквы
- 19. Вычисление частоты из амплитуды и битрейта
- 20. Python - Вычисление частоты продуктов по заданному запросу
- 21. Вычисление частоты гласных с помощью R
- 22. FFT - Вычисление точной частоты между ячейками частот
- 23. Подсчет частоты значений в списке Использование Control.Foldl
- 24. Вычисление значений на основе результатов других значений
- 25. Вычислить промежутки значений в словаре
- 26. Сумма значений в словаре - Swift
- 27. нахождение вероятности значений в словаре
- 28. список фильтров значений в словаре
- 29. Проверка значений кортежей в словаре
- 30. Подсчет количества значений в словаре
(Для больших словарей, '.itervalues ()' может быть более эффективным в Py 2.x) – Amber
Хороший момент. Но поскольку я лично использую Python 3, а 'values' работает в обеих версиях, я просто добавлю необходимые изменения в список причуд. Программистам Python 2 все равно придется работать;) – phihag
Yup. :) Просто замечал это для будущих читателей, не предлагая изменить свой ответ. – Amber