01 · Punto de partida
Todo sí/no es Bernoulli
Compra o no, falla o no, cara o ceca, convierte o no: un ensayo Bernoulli(p) vale 1 con probabilidad p y 0 con 1−p. Es la variable más simple y la más usada: cada cliente, pieza o jugada es un 0/1.
Su potencia está en la suma: n Bernoulli independientes forman una binomial (tema 19), y su promedio estima p (temas 15 y 32).
- ¿Qué cuenta como «éxito» (1) exactamente?
- ¿Cuánto vale p y de dónde sale (dato, supuesto, calibración)?
- ¿Los intentos son independientes con igual p?
- ¿Cómo genero miles de 0/1 en el simulador?
02 · Definición
Tabla mínima, consecuencias máximas
Parámetro único
Solo p ∈ [0,1]. P(1) = p, P(0) = 1−p. Todo el modelo cabe en un número.
Media = tasa
El esperado es la tasa de éxito. Promedio de 0/1 = frecuencia = P̂.
Varianza pico en 0,5
Máxima en p = 0,5 (0,25), nula en 0 o 1. Lo incierto dispersa; lo seguro no.
| Caso | p | E | Var |
|---|---|---|---|
| Moneda | 0,5 | 0,5 | 0,25 |
| Conversión 12 % | 0,12 | 0,12 | 0,106 |
| Falla 2 % | 0,02 | 0,02 | 0,0196 |
03 · Dónde vive en tu modelo
El if aleatorio hecho distribución
Úsala
Un intento, dos salidas
Clic, compra, falla, acierto, pago. Si se resume en sí/no por unidad, es Bernoulli.
No la fuerces
Más de dos salidas o p variable
Si hay 3+ categorías o p cambia por cliente, es categórica o Bernoulli con p por segmento (ramas, tema 6).
- Indicadora
- X = 1 si ocurre A, 0 si no. E[X] = P(A): eventos hechos número (tema 8).
- Suma
- n independientes → Binomial(n,p). El puente al conteo (tema 19).
- Muestreo
random.random() < p: la línea más escrita en simulación.- Calibración
- p se estima con éxitos/n y se intervala (temas 32 y 33).
04 · Ejemplos
0/1 de todos los días
- 1Web.
Visita compra con p = 0,12. 100 visitas → ~12 ventas.
- 2Calidad.
Pieza falla con p = 0,02. Lote de 50 → ~1 falla.
- 3Soporte.
Llamada resuelve al primer contacto con p = 0,7.
- 4Juego.
Golpe crítico con p = 0,1. 10 golpes → ~1 crítico.
- 5Pagos.
Factura se cobra a término con p = 0,85.
05 · Representación en Python
Una línea, miles de ensayos
Python en tu navegador. Cambiá p y N y mirá la tasa.
import random
random.seed(181)
p, N = 0.12, 5000
xs = [1 if random.random() < p else 0 for _ in range(N)]
print("tasa:", round(sum(xs)/N, 4), "| p:", p)
Consejo: la tasa con N = 50 salta ±0,05; con 5000 se pega a p.
Varianza muestral vs p(1−p)
import random, statistics
random.seed(9)
p = 0.3
xs = [1 if random.random() < p else 0 for _ in range(6000)]
print("s²:", round(statistics.variance(xs), 4), "| teo:", round(p*(1-p), 4))
06 · Exploración
Laboratorio: p manda, N estabiliza
Fijá p y generá N ensayos. Barras claras = tabla exacta (1−p, p); sólidas = frecuencias. Las curvas finas muestran la tasa acumulada de 3 réplicas hacia p.
X ~ Bernoulli(p)
P(1) = p · Var = p(1−p)
Con N grande, las sólidas calcan las claras.
Izquierda: barras 0/1. Derecha: tasas acumuladas de 3 réplicas convergiendo a p.
Preguntas para explorar
- Con p = 0,5 y N = 50, ¿cuánto se separan las réplicas? ¿Y con N = 5000?
- Con p = 0,05, ¿la barra del 1 se estima bien con N = 100? ¿Qué N pedirías?
- ¿Dónde es máxima la varianza? Mové p y mirá el resultado.
Ver respuestas sugeridas
- Con 50 saltan ±0,1; con 5000 se pegan a ±0,01. Máxima varianza = máximo ruido.
- No: ~5 éxitos esperados, ruido relativo enorme. Para p chico, N de miles (tema 42).
- En p = 0,5: Var = 0,25. En 0 o 1 vale 0: certeza no dispersa.
07 · Comprensión
Confusiones frecuentes
«Bernoulli es lo mismo que binomial»
No: Bernoulli es un intento (0/1); binomial es la suma de n (0…n). Una es átomo, la otra molécula.
«p = 0,5 siempre»
Solo monedas justas. Conversiones (0,12) y fallas (0,02) viven lejos de 0,5 y con menos varianza.
«Promediar 0/1 no informa»
Informa p: es la tasa. Todo dashboard de conversión promedia Bernoulli sin decirlo.
«Independencia se asume»
Se verifica o se declara como supuesto con sensibilidad. Rachas y contagios la rompen.
08 · Práctica guiada
Ejercicios con Python
Ejercicio 1: tasa de conversión
Con p = 0,12 y 2000 visitas, estimá ventas y compará con 240 esperadas.
import random
random.seed(181)
N, p = 2000, 0.12
v = sum(1 for _ in range(N) if random.random() < p)
print(v, "| esperadas:", N*p)
Ver solución razonada
Ronda 240 ± 15. El ± sale de √(Np(1−p)) ≈ 14,5: la binomial ya asoma (tema 19).
Ejercicio 2: varianza máxima
Graficá mentalmente p(1−p) para p en 0, 0,25, 0,5, 0,75, 1. ¿Dónde pica?
for p in [0, 0.25, 0.5, 0.75, 1]:
print(p, round(p*(1-p), 3))
Ver solución
0, 0,1875, 0,25, 0,1875, 0. Pico en 0,5: máxima incertidumbre, más N para igual precisión.
Ejercicio 3: de Bernoulli a decisión
Promoción cuesta 2 por visita y deja 20 por compra (p = 0,12). ¿Ganancia esperada por visita? Verificá simulando.
Ver una posible respuesta
import random
random.seed(21)
p = 0.12
ys = [(20-2) if random.random() < p else -2 for _ in range(8000)]
print("E:", 20*p-2, "| sim:", round(sum(ys)/len(ys), 3))
E = 0,4 por visita: conviene. Linealidad sobre Bernoulli convierte tasas en plata (tema 13).
09 · Síntesis
Ideas para recordar
- Bernoulli(p): 1 con p, 0 si no. E = p, Var = p(1−p).
- Promediar 0/1 estima p; la suma de n da binomial.
- En Python:
random.random() < p. - p se calibra con datos; varianza pica en 0,5.
- Todo sí/no del simulador es Bernoulli con nombre.
En el próximo tema sumaremos intentos: distribución binomial.