0. Los datos de la práctica
Esta práctica no necesita de ningún archivo de datos.
1. Números pseudoleatorios
- Los ordenadores NO pueden (ni deben) realizar procesos aleatorios pero pueden realizar procesos que PARECEN aleatorios.
- Hay algoritmos deterministas que generan largas sucesiones de números (en el intervalo [0,1[) que no parecen seguir un patrón, y que cubren todo el intervalo de manera bastante uniforme, pero que se repiten periódicamente con una periodicidad bastante larga.
- Uno de ellos genera una gran sucesión \(x_1\), \(x_2\), \(x_3\), … , \(x_{4294967296}\) de números del intervalo [0,1[: se dicen pseudoaleatorios porque no se aprecia un patrón claro.
- Para simular un valor de un proceso aleatorio, se usa uno de esos números pseudoaleatorios. Para volver a simular otro valor (del mismo proceso, o de otro), se usa el siguiente número pseudoaleatorio de la lista.
- Para indicar a R el lugar de la lista donde comenzar a leer los números pseudoaleatorios, se usa la función
set.seed()
, con un argumento entero.
set.seed(seed=123) # establece la semilla
- A partir de ahí, cada llamada a una función que simula aleatoriedad, pasa al siguiente número pseudoaleatorio de la lista.
- Si se quiere “repetir” usa serie de simulaciones, hay que usar una semilla inicial.
1.1. Ley de los grandes números
- Una versión de la ley de los grandes números se puede interpretar de la siguiente forma:
- Sea \(A\) un suceso posible de un experimento, que tiene probabilidad de ocurrir \(P(A)\).
- Si se realiza indefinidamente el experimento (o simulaciones del mismo):
- A veces ocurrirá el suceso \(A\)
- A veces no ocurrirá el suceso \(A\)
- Para cada \(n = 1, 2, 3, \ldots\):
- Sea \(N_n(A) =\) “número de veces que ocurre \(A\) en las \(n\) primeras realizaciones del experimento”
- Entonces \(\displaystyle{\lim_{n \to \infty} \frac{N_n(A)}{n} = P(A)}\) con probabilidad \(1\).
- Esto significa que si se realiza un gran número de simulaciones, la frecuencia relativa del suceso \(A\) debe acercarse al valor verdadero de la probabilidad \(P(A)\).
- \(\displaystyle{\lim_{n \to \infty} ``\text{Frecuencia relativa de } A" = P(A)}\)
- Conclusión: la simulación numérica de un experimento “un gran número de veces” ayuda a “aproximar” valores de probabilidad. Esto se llama método de MonteCarlo.
- \(P(A) \approx\) “Frecuencia relativa de \(A\)” con alta probabilidad, si el número de realizaciones del experimento es “muy grande”.
- Si el número de realizaciones del experimento no es muy grande, la aproximación no es muy probable.
3. Simulación y probabilidades en variable aleatoria discreta de rango finito.
- Una v.a. discreta \(X\) con rango finito, viene dada por sus valores posibles y sus probabilidades (la función \(f(x)\)).
- Ejemplo: sea \(X\) la variable aleatoria dada por la tabla:
\(f(X)\) |
0.3 |
0.2 |
0.2 |
0.1 |
0.1 |
0.1 |
- Calcula media, varianza, moda, \(P(X<3)\) y obtén una muestra (aleatoria simple) de tamaño 50.
# ponemos nombres adecuados
x = 0:5 # valores de X
fx = c(0.3,0.2,0.2,0.1,0.1,0.1) # probabilidades (funcion f)
# media: transcribir fórmula
media = sum(x*fx)
media
# varianza: transcribir fórmula
varianza = sum( (x-media)^2 * fx )
varianza
# moda: es la X con mayor probabilidad
x[ which(fx==max(fx)) ]
# P(X<3): sumar las probabilidades correspondientes
sum( fx[ x < 3 ] )
# muestra de tamaño 50
set.seed(1012) # ponemos una semilla cualquiera
m = sample(x=x, size=50, replace=TRUE, prob=fx)
table(m) # para verla mejor
EJERCICIO 2
Un equipo de fútbol A, independientemente de contra quién juegue, marca una cantidad de goles que puede ser 0, 1, 2 ó 3 con probabilidades respectivas de 0.2, 0.5, 0.2 y 0.1. Otro equipo de fútbol B, independientemente de contra quién juegue, marca una cantidad de goles que puede ser 0, 1, 2 ó 3 con probabilidades respectivas 0.3, 0.2, 0.3 y 0.2.
- Calcula media y varianza de la variable “número de goles” de cada equipo.
- Sol.: A: 1.2 y 0.76, B: 1.4 y 1.24
- Simula 100 tanteos de cada equipo. Almacénalos en sendos vectores. Calcula el número de empates.
- Calcula de manera exacta o lo más aproximada posible la probabilidad de que los equipos A y B empaten al enfrentarse.
- Sol.: 0.24 (exacta) o un valor parecido si es aproximada.
FIN EJERCICIO 2
4. Simulación y probabilidades en modelos de variable aleatoria ya programados
- En R están programados muchos modelos de variable aleatoria
- Algunos modelos están planteados de modo distinto al nuestro (los parámetros significan algo parecido pero distinto, por lo que habrá que pensar cómo adaptarlos).
- Resumen de modelos: nombre en R, argumentos y significado
Binomial |
binom |
size , prob |
Número de éxitos en size pruebas de Bernoulli independientes de parámetro prob |
Binomial negativo |
nbinom |
size , prob |
Número de no-éxitos hasta encontrar size éxitos en pruebas de Bernoulli independientes de parámetro prob (ojo no es el número de pruebas) |
Hipergeométrico |
hyper |
m , n , k |
Número de bolas éxito al extraer (sin remplazo) k bolas de una urna con m bolas éxito y n bolas no-éxito |
Poisson |
pois |
lambda |
Número de ocurrencias en un proceso de Poisson de media (o intensidad) lambda . |
Exponencial |
exp |
rate |
Exponencial correspondiente a un proceso de Poisson de media rate (o bien exponencial de media 1/rate ) |
Uniforme |
unif |
min , max |
Uniforme en el intervalo [min , max ] |
Normal |
norm |
mean , sd |
Normal de media mean y desviación típica sd (¡atención que no es la varianza!) |
\(\chi^2\) o Ji-cuadrado |
chisq |
df |
Ji-cuadrado con df grados de libertad |
\(t\) de Student |
t |
df |
\(t\) de Student con df grados de libertad |
\(F\) de Snedecor |
f |
df1 , df2 |
\(F\) de Snedecor con df1 y df2 grados de libertad |
4.1. Funciones que calculan probabilidades
- Cuando \(X\) es una variable DISCRETA (por ejemplo, binomial, binomial negativa, hipergeométrica y Poisson), las probabilidades se pueden calcular con las funciones \(f(x)\) y \(F(x)\) de la siguiente forma:
- \(P(X=a) = f(a)\)
- \(P(X \neq a) = 1 - f(a)\)
- \(P(X \leq a) = F(a)\)
- \(P(X < a) = F(a-1)\)
- \(P(X > a) = 1 - F(a)\)
- \(P(X \geq a) = 1 - F(a-1)\)
- \(P(a < X \leq b) = F(b) - F(a)\)
- \(P(a < X < b) = F(b-1) - F(a)\)
- \(P(a \leq X \leq b) = F(b) - F(a-1)\)
- \(P(a \leq X < b) = F(b-1) - F(a-1)\)
- Cuando \(X\) es una variable CONTINUA (por ejemplo, uniforme, exponencial y normal), las probabilidades se pueden calcular con las funciones \(f(x)\) y \(F(x)\) de la siguiente forma:
- \(P(X=a) = 0\)
- \(P(X \neq a) = 1\)
- \(P(X \leq a) = F(a)\)
- \(P(X < a) = F(a)\)
- \(P(X > a) = 1 - F(a)\)
- \(P(X \geq a) = 1 - F(a)\)
- \(P(a < X \leq b) = F(b) - F(a)\)
- \(P(a < X < b) = F(b) - F(a)\)
- \(P(a \leq X \leq b) = F(b) - F(a)\)
- \(P(a \leq X < b) = F(b) - F(a)\)
- R tiene programadas las funciones \(f(x)\) y \(F(x)\) de los principales modelos de probabilidad. Su sintaxis es un tanto especial.
4.1.1. Función \(f(x)\) (de probabilidad o densidad de probabilidad)
- Sintaxis del nombre de la función:
- Prefijo
d
- Nombre R del modelo (mirar tabla)
- Sintaxis de los argumentos de la función:
x=
valor que del se quiere calcular la \(f(x)\)
- Resto de parámetros del modelo (mirar tabla)
- Ejemplo: ¿cuánto vale \(P(X=6)\) si \(X\) sigue el modelo de Poisson de media \(\mu=4.5\)?
- \(P(X=6) = f(6) =\)
dpois(x=6, lambda=4.5)
\(= 0.1281201\).
4.1.2. Función \(F(x)\) (de distribución o probabilidad acumulada)
- Sintaxis del nombre de la función:
- Prefijo
p
- Nombre R del modelo (mirar tabla)
- Sintaxis de los argumentos de la función:
q=
valor del que se quiere calcular la \(F(x)\)
- Resto de parámetros del modelo (mirar tabla)
- Ejemplo: ¿cuánto vale \(P(X \leq 3.25)\) si \(X\) sigue el modelo normal de media \(\mu=2.97\) y desviación típica \(\sigma = 0.83\)?
- \(P(X \leq 3.25) = F(3.25) =\)
pnorm(q=3.25, mean=2.97, sd=0.83)
\(= 0.6320732\).
4.2. Función de cuantiles: calcula cuantiles
- Sintaxis del nombre de la función:
- Prefijo
q
- Nombre R del modelo (mirar tabla)
- Sintaxis de los argumentos de la función:
p=
orden del cuantil que se quiere calcular
- Resto de parámetros del modelo (mirar tabla)
- Ejemplo: ¿cuál es el percentil \(95\) de la distribución exponencial de media \(2.3\)?
- \(X_{0.95} =\)
qexp(p=0.95, rate=1/2.3)
\(= 6.8901842\).
4.3. Función de simulaciones: hace muestras
- Sintaxis del nombre de la función:
- Prefijo
r
- Acrónimo del modelo
- Sintaxis de los argumentos de la función:
n=
tamaño de la muestra (excepción para el modelo hipergeométrico, donde se llama nn
)
- Resto de parámetros del modelo
- Ejemplo: una muestra aleatoria simple de tamaño 20 del modelo uniforme en el intervalo \([0,10]\).
runif(n=20, min=0, max=10)
\(= \{\) 1.0281558, 5.7852718, 4.8134085, 6.0087059, 9.7920077, 4.0594272, 7.5241485, 0.00262, 9.9265986, 9.0649069, 4.2949824, 2.3541287, 2.9176321, 9.1812958, 6.7276606, 0.9599888, 4.7810153, 8.1892957, 7.1519285, 6.9596635 \(\}\).
4.4. Más ejemplos:
4.4.1. Ejercicios (soluciones en la siguiente sección)
Si \(X\) sigue el modelo Binomial con parámetros \(n = 10\) y \(p = 0.75\), calcula:
- \(P(X \leq 4)\).
- \(P(X = 8)\).
- El percentil \(33\).
- Simula 50 datos de esta variable binomial.
Calcula \(P(X = 0)\) si X sigue el modelo de Poisson de intensidad 2.3 veces/min en un intervalo de 5 min (el modelo el Poisson de media \(2.3 \times 5\)).
En una normal de media 5 y varianza 2, el 95% de los valores es inferior o igual a… (calcula el percentil 95)
Una urna tiene 10 bolas con 4 de ellas blancas. Se van a extraer 2 bolas sin remplazo. Calcula la probabilidad de que salga alguna blanca (es \(P(X>0)\) con el modelo hipergeométrico, mira la tabla a ver si deduces los parámetros).
Algunos emprendedores poco éticos venden más billetes que sitios disponibles (recintos, medios de transporte, telecos, etc., con el beneficio económico que ello comporta), y con la esperanza de que algunos no irán y habrá sitio para todos, (es decir, sin incurrir en la estafa llamada ‘overbooking’). Supongamos que los responsables de un recinto con una cabida de 100 personas, venden 110 entradas. Si hay una probabilidad del 15% de que cada portador de entrada no vaya finalmente al recinto:
- Realiza 365 simulaciones del número de personas que acude al recinto, y visualiza en cuántas de esas simulaciones se ha incurrido en overbooking (se trata del modelo binomial con \(n=110\) y \(p=0.85\)).
4.4.2. Soluciones (de los ejercicios de la sección anterior)
- Primero:
- \(P(X \leq 4) = F(4) =\)
pbinom(q=4, size=10, prob=0.75)
\(= 0.0197277\).
- \(P(X = 8) = f(8) =\)
dbinom(x=8, size=10, prob=0.75)
\(= 0.2815676\).
- \(X_{0.33} =\)
qbinom(p=0.33, size=10, prob=0.75)
\(= 7\).
rbinom(n=50, size=10, prob=0.75)
devuelve la muestra.
- Segundo: Se trata de \(P(X = 0) = f(0)\). Por tanto:
dpois(x=0, lambda=2.3*5)
\(= 0.0000101\).
- Tercero: Se trata de calcular el cuantil del orden 0.95, por tanto:
qnorm(p=0.95, mean=5, sd=sqrt(2))
\(= 7.3261743\).
- Cuarto: Es el modelo hipergeométrico de parámetros m=4, n=6 y k=2 (ver tabla) y se pide P(X>0). Entonces \(P(X > 0) = 1 - F(0)\). Por tanto:
1 - phyper(q=0, m=4, n=6, k=2) =
\(0.6666667\).
- Quinto: El número de asistentes sigue el modelo binomial, pues de 110 posibles, cada uno puede ir (o no ir) con probabilidad 0.85 (0.15 resp.) y la cantidad que se registra es el número de asistentes. Por eso:
acuden = rbinom(n=365, size=110, prob=0.85)
length( acuden[ acuden > 100] )
- Moraleja: si las multas no son fuertes, ¡el delito puede compensar!
4.5. Más ejercicios
- Calcula la probabilidad \(P(X > 5)\) cuando \(X \sim \text{Bin}(n=10, p=0.7)\), el modelo binomial de parámetros \(10\) y \(0.7\).
- Calcula la probabilidad \(P(X \neq 3)\) cuando \(X \sim \text{Po}(\mu=5.5)\), el modelo de Poisson de intensidad \(5.5\).
- Calcula la probabilidad \(P(X < 3)\) cuando \(X\) cuenta las observaciones de un proceso de Poisson de intensidad \(\lambda = 2.3\) en un intervalo de longitud \(T=2\). (Ayuda: cuando se da la intensidad o media, y un intervalo, la nueva intensidad o media del proceso de Poisson es \(\lambda \times T\))
- Calcula la probabilidad \(P(1.2 \leq X \leq 3.8)\) cuando \(X \sim \text{U}(a=0, b=5)\), el modelo uniforme en el intervalo \([0, 5]\).
- Calcula la probabilidad \(P(1.2 \leq X \leq 3.8)\) cuando \(X \sim \text{Exp}(\lambda=5)\), el modelo exponencial asociado a un proceso de Poisson de intensidad \(5\).
- Calcula la probabilidad \(P(X > 8)\) cuando X sigue el modelo exponencial de media \(\beta=6.5\).
- Calcula la probabilidad \(P(5 < X < 9)\) cuando \(X \sim \text{N}(\mu= 4, \sigma=2)\), el modelo normal.
- Calcula la probabilidad \(P(X > 5)\) cuando \(X \sim \text{N}(\mu= 4, \sigma^2=2)\), el modelo normal.
- Calcula el cuantil de orden \(0.95\) del modelo Ji-cuadrado con 5 grados de libertad.
- Calcula el cuantil de orden \(0.05\) del modelo t de Student con 9 grados de libertad.
- Calcula el cuantil de orden \(0.5\) del modelo F de Snedecor con 3 y 5 grados de libertad.