Calcule el histograma de nums contra los contenedores usando NumPy

En este artículo, vamos a discutir cómo calcular los números contra los contenedores usando el módulo NumPy . Un histograma es la mejor manera de visualizar la distribución de frecuencia de un conjunto de datos al dividirlo en pequeños intervalos de igual tamaño llamados contenedores. La función de histograma Numpy es similar a la función hist() de la biblioteca matplotlib , la única diferencia es que el histograma NumPy brinda la representación numérica del conjunto de datos, mientras que hist() brinda una representación gráfica del conjunto de datos.

Al crear un histograma, es mejor no pensar en los términos de los intervalos en lugar de encontrar cuántas veces aparece cada valor, es decir, una tabla de frecuencia. Para este propósito, un diccionario de python es muy adecuado. A continuación se muestra la implementación simple del histograma en Python puro:

Python3

# Dataset
a = (1, 3, 7, 7, 2, 3, 4, 7, 6, 6, 3, 5, 2)
 
# Creating empty dictionary
hist = {}
 
# Counting the number of occurrences
for i in a:
    hist[i] = hist.get(i, 0) + 1
 
# Printing the frequency table i.e histogram
print(hist)

Producción:

{1: 1, 3: 3, 7: 3, 2: 2, 4: 1, 6: 2, 5: 1}

Numpy tiene una función numpy.histogram() incorporada que representa la frecuencia de distribución de datos en forma gráfica. Los rectángulos que tienen el mismo tamaño horizontal corresponden al intervalo de clase llamado bin y la altura variable correspondiente a la frecuencia.

Sintaxis: numpy.histogram(data, bins=10, range=Ninguno, normed=Ninguno, pesos=Ninguno, densidad=Ninguno)

Parámetros:

  • datos: array o secuencia de array a trazar.
  • contenedores: int o secuencia de str define el número de contenedores de igual ancho en un rango, el valor predeterminado es 10.
  • rango: conjuntos de parámetros opcionales rango inferior y superior de contenedores.
  • normado: parámetro opcional igual que el atributo de densidad, da un resultado incorrecto para un ancho de bandeja desigual.
  • pesos: el parámetro opcional define una array de pesos que tienen las mismas dimensiones que los datos.
  • densidad: parámetro opcional si el resultado falso contiene el número de muestras en cada contenedor, si el resultado verdadero contiene la función de densidad de probabilidad en el contenedor.

Implementación:

Python3

# Import libraries
import numpy as np 
   
# Creating dataset
a = np.random.randint(100, size =(50))
   
# Creating histogram
np.histogram(a, bins = [0, 10, 20, 30, 40,
                        50, 60, 70, 80, 90,
                        100])
   
hist, bins = np.histogram(a, bins = [0, 10, 
                                     20, 30,
                                     40, 50,
                                     60, 70,
                                     80, 90,
                                     100]) 
   
# Displaying histogram
print (hist) 
print (bins) 

Producción:

[5 7 4 7 4 5 1 6 4 7]
[  0  10  20  30  40  50  60  70  80  90 100]

Aquí, la función np.histogram() tiene dos valores de retorno, hist , que proporciona la array de valores del histograma, y ​​edge_bin , que es una array de tipos de datos flotantes que contienen los bordes del contenedor que tienen una longitud mayor que hist.

La representación numérica anterior del histograma se puede convertir en forma gráfica. La función plt() presente en el submódulo pyplot de Matplotlib toma la array del conjunto de datos y la array del contenedor como parámetro y crea un histograma de los valores de datos correspondientes. A continuación se muestran algunos ejemplos para calcular el histograma de nums contra los contenedores:

Ejemplo 1:

Python3

# Import libraries
from matplotlib import pyplot as plt
import numpy as np
 
 
# Creating dataset
a = np.random.randint(100, size=(50))
 
# Creating plot
fig = plt.figure(figsize=(10, 7))
 
plt.hist(a, bins=[0, 10, 20, 30,
                  40, 50, 60, 70,
                  80, 90, 100])
 
plt.title("Numpy Histogram")
 
# show plot
plt.show()

Producción:

Ejemplo 2:

Python3

# Import libraries
from matplotlib import pyplot as plt
import numpy as np
 
# Creating dataset
l = [i for i in range(50)]
 
# Creating plot
plt.hist(l, bins=[1, 2, 3, 4, 5],
         color='green')
 
# show plot
plt.show()

Producción:

Ejemplo 3:

Python3

# Import libraries
from matplotlib import pyplot as plt
import numpy as np
 
# Creating dataset
l = np.random.randint(150)
 
# Creating plot
plt.hist(l, bins=l,
         color='lime')
 
# show plot
plt.show()

Producción:

Publicación traducida automáticamente

Artículo escrito por jeeteshgavande30 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 *