Menu
CoddyTech

Números aleatorios

Parte de la sección Datos y gráficos del Journey de Machine Learning de Coddy. Lección 18 de 60.

Las simulaciones, los datos mezclados y los modelos sin entrenar empiezan con números aleatorios. Estas 1.000 alturas inventadas se generaron con una sola línea:

Un histograma de 1.000 alturas aleatorias con forma de campana, más alto alrededor de la media de 170 cm y con menos valores hacia 140 y 200

NumPy los extrae de un generador, iniciado por una semilla:

rng = np.random.default_rng(42)
heights = rng.normal(170, 10, size=1000)
print(np.round(heights[:4], 1))
print(rng.integers(1, 7, size=5))
print(np.round(rng.random(3), 2))

Esto imprime:

[173.  159.6 177.5 179.4]
[2 4 3 3 5]
[0.44 0.13 0.09]

normal(mean, std, size) se agrupa alrededor de su media. integers excluye su límite superior, como range. random devuelve decimales de 0 a 1.

La misma semilla produce los mismos números en cualquier computadora, así que cualquiera puede repetir tu experimento. Cada extracción hace avanzar el generador.

challenge icon

Desafío

Fácil

Una tienda simula una semana que una repetición debe reproducir.

  1. Crea rng_a a partir de la semilla y extrae 7 recuentos de clientes, de 20 a 60 inclusive, y después 7 gastos con distribución normal: media 15, desviación estándar 4.
  2. Vuelve a extraer los recuentos de rng_b con la misma semilla y de rng_c con la semilla más 1.
  3. Imprime como se muestra a continuación: los gastos con 1 decimal y cuántos días coinciden b y c con a.

Para la semilla 12:

Customers: [45 30 59 58 22 27 28]
Spend: [21.5 10.2 12.5  9.7 14.6 19.  14.9]
Same seed, days that match: 7
Seed + 1, days that match: 1

Pruébalo tú mismo

import numpy as np

seed = int(input())

# Escribe tu código a continuación
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Datos y gráficos

Practica por tu cuenta: Compilador de Python online