Python – Frecuencias de valores asociados en el diccionario

A veces, mientras trabajamos con diccionarios, podemos tener problemas en los que necesitamos calcular los valores asociados a cada valor en el diccionario en la lista de registros. Este tipo de problema es peculiar, pero puede tener aplicación en dominios de desarrollo. Vamos a discutir cierta forma en que se puede realizar esta tarea.

Método: Uso anidadodefaultdict() + Counter()
La combinación de las funciones anteriores se puede usar para resolver este problema. En esto, usamos dictados predeterminados anidados para realizar un seguimiento de los elementos y el contador() realiza el conteo de elementos.

# Python3 code to demonstrate working of 
# Associated Values Frequencies in Dictionary
# Using defaultdict() + Counter()
from collections import defaultdict, Counter
  
# initializing list
test_list = [{'gfg' : 1, 'is' : 3, 'best' : 4},
             {'gfg' : 3, 'is' : 2, 'best' : 4}, 
             {'gfg' : 3, 'is' : 5, 'best' : 2},
             {'gfg' : 5, 'is' : 2, 'best' : 1},
             {'gfg' : 2, 'is' : 4, 'best' : 3},
             {'gfg' : 1, 'is' : 3, 'best' : 5},
             {'gfg' : 1, 'is' : 3, 'best' : 2}]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Associated Values Frequencies in Dictionary
# Using defaultdict() + Counter()
res = defaultdict(Counter)
for sub in test_list:
    for key, val in sub.items():
        res[key][val] += 1
  
# printing result 
print("The list after Frequencies : " + str(dict(res))) 
Producción :

La lista original es: [{‘gfg’: 1, ‘is’: 3, ‘best’: 4}, {‘gfg’: 3, ‘is’: 2, ‘best’: 4}, {‘gfg’ : 3, ‘es’: 5, ‘mejor’: 2}, {‘gfg’: 5, ‘es’: 2, ‘mejor’: 1}, {‘gfg’: 2, ‘es’: 4, ‘ mejor’: 3}, {‘gfg’: 1, ‘es’: 3, ‘mejor’: 5}, {‘gfg’: 1, ‘es’: 3, ‘mejor’: 2}]
La lista después de Frecuencias : {‘gfg’: Contador ({1: 3, 3: 2, 2: 1, 5: 1}), ‘es’: Contador ({3: 3, 2: 2, 4: 1, 5: 1} ), ‘mejor’: Contador ({2: 2, 4: 2, 1: 1, 3: 1, 5: 1})}

Publicación traducida automáticamente

Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *