Python – Contador de frecuencias de elementos de array

A veces, mientras trabajamos con Python Matrix, podemos tener un problema en el que necesitamos encontrar frecuencias de todos los elementos en Matrix. Este tipo de problema puede tener aplicación en muchos dominios. Analicemos ciertas formas en que se puede realizar esta tarea.

Método #1: UsoCounter() + sum() + map()
La combinación de los métodos anteriores se puede utilizar para realizar esta tarea. En esto, realizamos la tarea de contar elementos usando Counter() y extendiendo la lógica a cada fila usando sum() y map().

# Python3 code to demonstrate 
# Matrix elements Frequencies Counter
# using Counter() + sum() + map()
from collections import Counter
  
# Initializing list
test_list = [[4, 5, 6], [2, 4, 5], [6, 7, 5]]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Matrix elements Frequencies Counter
# using Counter() + sum() + map()
res = dict(sum(map(Counter, test_list), Counter()))
  
# printing result 
print ("The frequencies dictionary is : " + str(res))
Producción :

The original list is : [[4, 5, 6], [2, 4, 5], [6, 7, 5]]
The frequencies dictionary is : {2: 1, 4: 2, 5: 3, 6: 2, 7: 1}

Método #2: Usarchain() + Counter()
La combinación de las funciones anteriores se puede usar para realizar esta tarea. En esto, aplanamos la array usando chain() y calculamos la frecuencia usando Counter().

# Python3 code to demonstrate 
# Matrix elements Frequencies Counter
# using Counter() + chain()
from collections import Counter
import itertools
  
# Initializing list
test_list = [[4, 5, 6], [2, 4, 5], [6, 7, 5]]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Matrix elements Frequencies Counter
# using Counter() + chain()
res = dict(Counter(itertools.chain(*test_list)))
  
# printing result 
print ("The frequencies dictionary is : " + str(res))
Producción :

The original list is : [[4, 5, 6], [2, 4, 5], [6, 7, 5]]
The frequencies dictionary is : {2: 1, 4: 2, 5: 3, 6: 2, 7: 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 *