Distribución Zipf en NumPy
La distribución de Zipf , también conocida como la ley de Zipf, es un tipo de distribución de probabilidad discreta que se utiliza comúnmente para modelar datos en diversas áreas, como lingüística, ciencias sociales y muchas otras. Esta distribución se caracteriza por la ley de Zipf, que establece que la frecuencia de un elemento es inversamente proporcional a su rango. En otras palabras, algunos elementos son muy comunes, mientras que la mayoría de los elementos son raros. Esta distribución es útil para modelar la distribución de popularidad en grandes conjuntos de datos.
Esta lección introduce una librería o módulo usado en ciencia de datos con Python. Instálalo con pip en local; en el editor de The Data Schools muchas ya vienen precargadas.
Importa, ejecuta el ejemplo mínimo y solo después pasa a casos más complejos.
En NumPy, puedes generar datos que sigan una distribución Zipf utilizando la función
numpy.random.zipf
.
Ejemplo de Distribución Zipf en NumPy
Ejemplo
import numpy as np
rng = np.random.default_rng(1)
print(rng.zipf(2.5, 6))
distribución Zipf en NumPy:
- Importa las bibliotecas necesarias, incluyendo NumPy y Matplotlib.
-
Define el parámetro de forma
a, que debe ser mayor que 1. Este parámetro controla la forma de la distribución Zipf. -
Especifica el tamaño de la muestra que deseas generar (
size). -
Genera una muestra de datos Zipf utilizando
numpy.random.zipfcon el parámetro de formaay el tamaño de la muestrasize. -
Grafica un histograma de la muestra utilizando
matplotlibpara visualizar la distribución de los datos. - Calcula la probabilidad teórica de la distribución Zipf para compararla con la muestra generada.
- Grafica la probabilidad teórica de Zipf junto con el histograma de la muestra para visualizar cómo se ajusta la distribución.
Esta lección proporciona una introducción básica a la generación y visualización de datos que siguen una distribución Zipf en NumPy. Puedes ajustar el parámetro de forma
a
y el tamaño de la muestra según tus necesidades.
Practica Distribución Zipf en NumPy en el editor
Pon en práctica lo aprendido con nuestro editor Python interactivo. Cada ejercicio incluye el código de partida y un botón para abrirlo en una nueva pestaña, donde puedes modificarlo y ejecutarlo.
Ejercicio: Números aleatorios
En NumPy, puedes generar datos que sigan una distribución Zipf utilizando la función numpy.random.zipf.
Ejercicio: Muestra aleatoria Zipf
Genera datos con np.random.zipf y resume el resultado.
Ejercicio: Frecuencias de una muestra Zipf
Cuenta cuántas veces aparece cada valor en la muestra.
Cómo practicar
1. Pulsa Ejecutar en el bloque de código.
2. Modifica un valor o argumento.
3. Vuelve a ejecutar y observa la consola.