Esta práctica no necesita de ningún archivo de datos.
set.seed()
, con un argumento entero.sample(x=0:9, size=3) # simula 3 números del 0 al 9, qué sale?
set.seed(seed=123) # establece la semilla
sample(x=0:9, size=3) # simula 3 números del 0 al 9, qué sale?
sample(x=0:9, size=3) # vuelve a simular, qué sale?
set.seed(seed=123) # ponemos misma semilla otra vez
sample(x=0:9, size=3) # obtenemos mismas simulaciones
sample(x=0:9, size=3) # y las siguientes también
sample()
:
x
: vector con los objetos (números, cadenas de texto, etc.) a muestrear.size
: tamaño del muestreo. Por defecto es el tamaño del vector x
.replace
: lógico (FALSE
por defecto). ¿Es un muestreo con remplazo?prob
: vector proporcional a la probabilidad de los objetos del vector x
(debe tener igual longitud). Por defecto vale NULL
(que indicaría equiprobabilidad).x
.# simular 1000 lanzamientos de un dado equilibrado
d = sample(x=1:6, size=1000, replace=TRUE) # prob, por defecto
d # vemos lo que ha salido
table(d) # vemos MEJOR lo que ha salido
table(d)/length(d) # ahora con frec. RELATIVAS
# simular 100 lanzamientos de una modeda trucada
# con probabilidad de cara igual a 0.7
m = sample(x=c('C', 'X'), size=100, replace=TRUE, prob=c(7,3))
m # vemos lo que ha salido
table(m) # vemos MEJOR lo que ha salido
table(m)/length(m) # frec. relativas
# simular elección de delegado y subsedelegado de clase
alumnos = 1:102 # tenemos listado para identificar cada uno
sample(x=alumnos, size=2) # replace y prob, por defecto
sample(x=alumnos, size=2) # ¿por qué son otros?
EJERCICIO 1:
1
sea doble que la probabilidad del X
y del 2
, que serían iguales entre sí. Antes de simular, establece la semilla al valor 1012
.
1012
, y representa la muestra en una tabla de frecuencias relativas. ¿Qué reflexión puedes hacer al ver las frecuencias relativas?
FIN DE EJERCICIO 1
set.seed(123)
n = 1e5 # cantidad de simulaciones
dado1 = sample(x=1:6, size=n, replace=TRUE)
dado1[1:10] # esto es solo para ver los primeros lamzamientes
dado2 = sample(x=1:6, size=n, replace=TRUE)
dado2[1:10] # esto es solo para ver los primeros lamzamientes
suma = dado1 + dado2
suma[1:10] # esto es solo para ver las primeras suma
sum(suma==7)/n # frecuencia relativa del suceso
\(X\) | 0 | 1 | 2 | 3 | 4 | 5 |
\(f(X)\) | 0.3 | 0.2 | 0.2 | 0.1 | 0.1 | 0.1 |
# 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)
# 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.
1012
solo antes de la primera simulación
1012
y con 1e5
simulaciones).FIN EJERCICIO 2
Modelo | Nombre R | Parámetros | 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 k bolas (sin remplazo) 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 |
ProbabIlidad | Var. DISCRETA (binomial, binomial negativa, hipergeométrica, Poisson,…) | Var. CONTINUA (uniforme, exponencial, normal, Ji-cuadrado, \(t\) de Student, \(F\) de Snedecor,…) |
\(P(X=a)\) | \(f(a)\) | \(0\) |
\(P(X \neq a)\) | \(1 - f(a)\) | \(1\) |
\(P(X \leq a)\) | \(F(a)\) | \(F(a)\) |
\(P(X < a)\) | \(F(a-1)\) | \(F(a)\) |
\(P(X > a)\) | \(1 - F(a)\) | \(1 - F(a)\) |
\(P(X \geq a)\) | \(1 - F(a-1)\) | \(1 - F(a)\) |
\(P(a < X \leq b)\) | \(F(b) - F(a)\) | \(F(b) - F(a)\) |
\(P(a < X < b)\) | \(F(b-1) - F(a)\) | \(F(b) - F(a)\) |
\(P(a \leq X \leq b)\) | \(F(b) - F(a-1)\) | \(F(b) - F(a)\) |
\(P(a \leq X < b)\) | \(F(b-1) - F(a-1)\) | \(F(b) - F(a)\) |
d
x=
valor que del se quiere calcular la \(f(x)\)dpois(x=6, lambda=4.5)
\(= 0.1281201\).dbinom(x=, size=, prob=)
dnbinom(x=, size=, prob=)
dhyper(x=, m=, n=, k=)
dpois(x=, lambda=)
dexp(x=, rate=)
dunif(x=, min=, max=)
dnorm(x=, mean=, sd=)
dchisq(x=, df=)
dt(x=, df=)
df(x=, df1=, df2=)
p
q=
valor del que se quiere calcular la \(F(x)\)pnorm(q=3.25, mean=2.97, sd=0.83)
\(= 0.6320732\).pbinom(q=, size=, prob=)
pnbinom(q=, size=, prob=)
phyper(q=, m=, n=, k=)
ppois(q=, lambda=)
pexp(q=, rate=)
punif(q=, min=, max=)
pnorm(q=, mean=, sd=)
pchisq(q=, df=)
pt(q=, df=)
pf(q=, df1=, df2=)
q
p=
orden del cuantil que se quiere calcularqexp(p=0.95, rate=1/2.3)
\(= 6.8901842\).qbinom(p=, size=, prob=)
qnbinom(p=, size=, prob=)
qhyper(p=, m=, n=, k=)
qpois(p=, lambda=)
qexp(p=, rate=)
qunif(p=, min=, max=)
qnorm(p=, mean=, sd=)
qchisq(p=, df=)
qt(p=, df=)
qf(p=, df1=, df2=)
r
n=
tamaño de la muestra (excepción para el modelo hipergeométrico, donde se llama nn
)runif(n=20, min=0, max=10)
\(= \{\) 0.7324492, 7.1170811, 7.088003, 8.9954023, 4.4787353, 9.3797527, 1.662911, 5.8945842, 7.6278126, 7.7584005, 4.389823, 1.4562083, 7.1750022, 9.1783556, 7.3110885, 2.8451555, 0.4696569, 7.2735389, 9.2528764, 8.4549816 \(\}\).rbinom(n=, size=, prob=)
rnbinom(n=, size=, prob=)
rhyper(nn=, m=, n=, k=)
rpois(n=, lambda=)
rexp(n=, rate=)
runif(n=, min=, max=)
rnorm(n=, mean=, sd=)
rchisq(n=, df=)
rt(n=, df=)
rf(n=, df1=, df2=)
1012
).pbinom(q=4, size=10, prob=0.75)
\(= 0.0197277\).dbinom(x=8, size=10, prob=0.75)
\(= 0.2815676\).qbinom(p=0.33, size=10, prob=0.75)
\(= 7\).rbinom(n=50, size=10, prob=0.75)
devuelve la muestra.dpois(x=0, lambda=2.3*5)
\(= 0.0000101\).qnorm(p=0.95, mean=5, sd=sqrt(2))
\(= 7.3261743\).1 - phyper(q=0, m=4, n=6, k=2) =
\(0.6666667\).1012
.