Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Variables aleatorias, Apuntes de Estadística

Ejercicios de variables aleatorias resueltos con R.

Tipo: Apuntes

2017/2018

Subido el 15/11/2018

iria-fernandez
iria-fernandez 🇪🇸

5

(1)

1 documento

1 / 15

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
# Variables aleatorias con R
#Sea X una variable aleatoria Bi(25, 0,5), calcular:
#a) P(X > 12).
sum(dbinom(13:25,size=25,prob=0.5))
#b) P(12 <= X <= 20).
sum(dbinom(12:20,size=25,prob=0.5))
#c) P(X <= 20/X > 12); P(X <= 20/X > 19)
sum(dbinom(13:20,size=25,prob=0.5))/sum(dbinom(13:25,size=25,prob=0.5))
dbinom(20,size=25,prob=0.5)/sum(dbinom(20:25,size=25,prob=0.5))
#d) Los apartados anteriores usando la probabilidad individual y usando la probabi-
lidad acumulada
1-pbinom(12,size=25,prob=0.5) #a)
pbinom(20,size=25,prob=0.5)-pbinom(11,,size=25,prob=0.5) #b)
(pbinom(20,size=25,prob=0.5)-pbinom(12,size=25,prob=0.5))/(1-
pbinom(12,size=25,prob=0.5)) #c)
(pbinom(20,size=25,prob=0.5)-pbinom(19,size=25,prob=0.5))/(1-
pbinom(19,size=25,prob=0.5)) #c)
#e) Los cuartiles y los deciles.
(qq <- qbinom(c(0.25,0.5,0.75),size=25,prob=0.5))
qbinom(seq(0,1,0.1),size=25,prob=0.5)
#f ) ¿Cuál es el valor mínimo que deja un 33.3% de la distribución a su derecha?.
qbinom(0.667,size=25,prob=0.5)
#g) El rango Inter-cuartilico: Q_3- Q_1. Compáralo con la varianza teórica.
qq[3] - qq[1]
#h) Genera una muestra aleatoria de tamaño 500.
(x <- rbinom(500,size=25,prob=0.5))
#i) Calcula su media, varianza, mediana, moda teóricamente (sin usar R).
\mu= 25*0.5
\sigma^2= 25*0.5*(1-0.5)
Mediana= 12 (a partir de la función de distribución <-> prob. acumulada)
Moda= valores centrales 13-14 (por ser impar, si fuese par 13)
# j) Calcula la media, varianza, mediana y moda de la muestra aleatoria obtenida
anteriormente. Compara los valores.
mean(x); var(x); median(x)
table(x)
which.max(table(x)) # ollo o primeiro máximo, pode ter máis
#k) Genera, nuevamente, una muestra aleatoria de tamaño 10000. Calcula los valores
resumen.
(xx <- rbinom(10000,size=25,prob=0.5))
mean(xx); var(xx); median(xx)
table(xx)
which.max(table(xx))
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Vista previa parcial del texto

¡Descarga Variables aleatorias y más Apuntes en PDF de Estadística solo en Docsity!

Variables aleatorias con R

#Sea X una variable aleatoria Bi(25, 0,5), calcular: #a) P(X > 12). sum(dbinom(13:25,size=25,prob=0.5)) #b) P(12 <= X <= 20). sum(dbinom(12:20,size=25,prob=0.5)) #c) P(X <= 20/X > 12); P(X <= 20/X > 19) sum(dbinom(13:20,size=25,prob=0.5))/sum(dbinom(13:25,size=25,prob=0.5)) dbinom(20,size=25,prob=0.5)/sum(dbinom(20:25,size=25,prob=0.5)) #d) Los apartados anteriores usando la probabilidad individual y usando la probabi- lidad acumulada 1 - pbinom(12,size=25,prob=0.5) #a) pbinom(20,size=25,prob=0.5)-pbinom(11,,size=25,prob=0.5) #b) (pbinom(20,size=25,prob=0.5)-pbinom(12,size=25,prob=0.5))/(1- pbinom(12,size=25,prob=0.5)) #c) (pbinom(20,size=25,prob=0.5)-pbinom(19,size=25,prob=0.5))/(1- pbinom(19,size=25,prob=0.5)) #c) #e) Los cuartiles y los deciles. (qq <- qbinom(c(0.25,0.5,0.75),size=25,prob=0.5)) qbinom(seq(0,1,0.1),size=25,prob=0.5) #f ) ¿Cuál es el valor mínimo que deja un 33.3% de la distribución a su derecha?. qbinom(0.667,size=25,prob=0.5) #g) El rango Inter-cuartilico: Q_3- Q_1. Compáralo con la varianza teórica. qq[3] - qq[1] #h) Genera una muestra aleatoria de tamaño 500. (x <- rbinom(500,size=25,prob=0.5)) #i) Calcula su media, varianza, mediana, moda teóricamente (sin usar R). \mu= 250. \sigma^2= 250.5*(1-0.5) Mediana= 12 (a partir de la función de distribución <-> prob. acumulada) Moda= valores centrales 13-14 (por ser impar, si fuese par 13)

j) Calcula la media, varianza, mediana y moda de la muestra aleatoria obtenida

anteriormente. Compara los valores. mean(x); var(x); median(x) table(x) which.max(table(x)) # ollo o primeiro máximo, pode ter máis #k) Genera, nuevamente, una muestra aleatoria de tamaño 10000. Calcula los valores resumen. (xx <- rbinom(10000,size=25,prob=0.5)) mean(xx); var(xx); median(xx) table(xx) which.max(table(xx))

#2. Sea X una variable aleatoria Bi(100, 0,01), calcular: #a) P(X > 12). 1 - pbinom(12,size=100,prob=0.01) #b) P(12 <= X <= 20) sum(dbinom(12:20,size=100,prob=0.01)) #c) Los cuartiles y los deciles. (qq <- qbinom(c(0.25,0.5,0.75),size=100,prob=0.01)) qbinom(seq(0,1,0.1),size=100,prob=0.01) #d) Calcula nuevamente los valores anteriores pero usando la aproximación de la binomial a la poisson.

Como n>=20 y p<0.1 entonces puedo aproximar por la distribución Pois( 100*0.01)

1 - ppois(12,lambda=1) #a) sum(dpois(12:20,lambda=1)) #b) qpois(c(0.25,0.5,0.75),lambda=1) #c) qpois(seq(0,1,0.1),lambda=1) #e) A través de un gráfico compara las probabilidades de la distribución binomial (eje X) con las probabilidades de la distribución de poisson (eje Y) correspondiente. ¿Como sería el gráfico si la aproximación entre estas dos distribuciónes fuese perfecta? x <- 0: xx <- dbinom(x,size=100,prob=0.01) yy <- dpois(x,lambda=1) plot(xx,yy) abline(a=0,b=1,col="red")

3. Sea X una variable aleatoria BN(10,0.3), calcular:

#a) Probabilidad de que el número de fallos sea menor de 10, es decir, P(X < 10). pnbinom(9,size=10,prob=0.3) #b) P(X <= 20/X => 12); P(X <= 8). sum(dnbinom(13:20,size=10,prob=0.3))/(1-pnbinom(11,size=10,prob=0.3)) pnbinom(8,size=10,prob=0.3) #c) Los apartados anteriores usando la probabilidad individual y usando la probabi- lidad acumulada.

idem que los ejercicios anteriores

#d) Cuantos intentos tengo que realizar para asegurarme con un 95% que obtengo los 10 exitos. qnbinom(0.95,size=10,prob=0.3) #e) Los cuartiles y los deciles. (qq <- qnbinom(c(0.25,0.5,0.75),size=10,prob=0.3)) qnbinom(seq(0,1,0.1),size=10,prob=0.3) #f) Genera una muestra aleatoria de tamaño 500. x <- rnbinom(500,size=10,prob=0.3) #g) Calcula su media, varianza, mediana teóricamente (sin usar R). \mu = 10(1-0.3)/0. \sigma^2 = 10(1-0.3)/0.3** Mediana= 22 (a partir de la función de distribución <-> prob. acumulada) Moda= valor 22

barplot(dpois(0:max(x),10)) screen(2) barplot( table(x)/length(x)) # ollo pode ser que o número de barras sexa menor que na teórica close.screen(all=TRUE) #j) Comparar gráficamente, la probabilidad de los 40 primeros valores de la distribución de Poisson con su aproximación por la distribución normal. x <- 0: xx <- dpois(x,lambda=10) yy <- pnorm(x+0.5,mean=10,sd=sqrt(10))-pnorm(x-0.5,mean=10,sd=sqrt(10)) plot(x,xx,col='red',type='l') points(x,yy,col='blue') #5. Sea X una variable aleatoria U(-1, 1), calcular: #a) P(X < 0,1). punif(0.1, min=-1,max=1) #b) P(X <= 0,2/X > 0). (punif(0.2,min=-1,max=1) - punif(0,min=-1,max=1) ) / (1-punif(0,min=-1,max=1))

d) Los cuartiles y los deciles.

qunif(c(0.25,0.5,0.75),min=-1,max=1); qunif((1:9)/10,min=-1,max=1) #e) Genera una muestra aleatoria de tamaño 500. x <- runif(500,min=-1,max=1)

f ) Calcula su media, varianza, mediana, moda teóricamente (sin usar R).

media = 0, var= 1/3, mediana=0, moda= infinitas, cualquier punto del intervalo (-1,1)

g) Calcula la media, varianza, mediana y moda de la muestra aleatoria obtenida

anteriormente. Compara los valores. summary(x); var(x) xx <- cut(x,breaks=seq(-1,1,length=20)); table(xx); which.max(table(xx))

Ollo hai poucas diferencias entre as frecuencias dos intervalos

h) Genera, nuevamente, una muestra aleatoria de tamaño 10000. Calcula los valores

resumen. x <- runif(10000,min=-1,max=1) summary(x); var(x) xx <- cut(x,breaks=seq(-1,1,length=20)); table(xx); which.max(table(xx))

i) Representa gráficamente la distribución de frecuencias de los 10000 datos anteriores.

Compara con la distribución teórica de la variable. hist(x,freq=FALSE); abline(h=0.5,col="red") #6. Sea X una variable aleatoria exponencial de media 10, calcular: #a) P(X < 10). pexp(10,1/10)

b) P(X <= 20/X >= 12); P(X <= 8). ¿Que conclusión podemos sacar de esta igualdad?.

(pexp(20,0.1) - pexp(12,0.1))/ (1-pexp(12,0.1)); pexp(8,0.1)

a distribución exponencial carece de memoria, de ahí a igualdade destas

probabilidades.

#c) Los cuartiles y los deciles. qexp(c(0.25,0.5,0.75),0.1); qexp((1:9)/10,0.1) #f) Genera una muestra aleatoria de tamaño 500. x <- rexp(500,0.1) #f ) Calcula su media, varianza, mediana, moda teóricamente (sin usar R).

media = 10, var= , mediana=ya calculada, moda= calcular un máximo de la función de

densidad!!!!

g) Calcula la media, varianza, mediana y moda de la muestra aleatoria obtenida

anteriormente. Compara los valores. summary(x); var(x) xx <- cut(x,breaks=seq(0,2*10,length=20)); table(xx); which.max(table(xx))

Ollo grid pouco fino

h) Genera, nuevamente, una muestra aleatoria de tamaño 10000. Calcula los valores

resumen. x <- rexp(10000,0.1) summary(x); var(x) xx <- cut(x,breaks=seq(0,2*10,length=20)); table(xx); which.max(table(xx))

i) Representa gráficamente la distribución de frecuencias de los 10000 datos anteriores.

Compara con la distribución teórica de la variable. hist(x,freq=FALSE) mids < - hist(x,plot=FALSE)$mids y <- dexp(mids,0.1) points(mids,y,col="red")

7. Sea X una variable aleatoria N(μ = 10, # = 2), calcular:

a) P(X > 10) y P(X >= 10). Justifica la igualdad de estos resultados.

1 - pnorm(10,mean=10,sd=2)

mismo resultado porque las probabilidades en los puntos son cero al ser la v. aleatoria

continua.

b) P(X < 13,91993). Sea Y = (X-10)/2 , calcular su media y desviación típica. Como Y

sigue una distribución Normal, obtener P(Y < 1,959964). Justifica la igualdad de estos

resultados. pnorm(13.91993,,mean=10,sd=2)

Y sigue unha distribución N(0,1) y

pnorm(1.959964,0,1)

da o mesmo resultado porque Y é o proceso de tipificación dunha variable e 13.91993=

1.959964*2+

c) P(X <= 20/X >= 12); P(X <= 8).

(pnorm(20,mean=10,sd=2) - pnorm(12,mean=10,sd=2))/(1-pnorm(12,mean=10,sd=2)) pnorm(8,mean=10,sd=2)

d) Los cuartiles y los deciles.

qnorm(c(0.25,0.5,0.75),mean=10,sd=2)); qnorm((1:9)/10,,mean=10,sd=2) #f) Genera una muestra aleatoria de tamaño 500. x <- rnorm(500,mean=10,sd=2) #f ) Calcula su media, varianza, mediana, moda teóricamente (sin usar R).

variables aleatorias continuas

a. continuas>uniforme>acumuladas>p.uniformes > punif(c(0.1), min=-1, max=1, lower.tail=TRUE) cola de la izquierda porque nos pide menor que.. b. > punif(c(0.2), min=-1, max=1, lower.tail=TRUE) [1] 0. > punif(c(0), min=-1, max=1, lower.tail=TRUE) [1] 0. > (0.6-0.5)/0. [1] 0. c. cuartiles deciles:estasdistica/variables/distribuciones continuas/distr uniformes/cuantiles cuantiles: > qunif(c(0.25,0.5,0.75), min=-1, max=1, lower.tail=TRUE) [1] - 0.5 0.0 0. deciles:

> qunif(c(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9), min=-1, max=1, lower.tail=TRUE) [1] - 0.8 - 0.6 - 0.4 - 0.2 0.0 0.2 0.4 0.6 0. d. muestra aleatoria tamaño 500 muestra de una distribucion uniforme e. f. genera muestras distintas cada vez que lo ejecutas. estadadistica basica,/descriptiva/resumenes numericos > numSummary(UniformSamples[,"obs"], statistics=c("mean", "sd", "IQR", "quantiles"), quantiles=c(0,

  • 0.25,0.5,0.75,1)) Media = mean La mediana se encuentra en la posicion del 50% Varianza = desviacion tipica(sd) al cuadrado= 0.5749199*0. g) Con 1000 datos

b) c)distribucion normal

c) > pnorm(c(20), mean=10, sd=2, lower.tail=TRUE) [1] 0. > pnorm(c(12), mean=10, sd=2, lower.tail=FALSE) [1] 0. > 0.9999997/0. [1] 6. > pnorm(c(8), mean=10, sd=2, lower.tail=TRUE) [1] 0. d) Cuantiles: > qnorm(c(0.25,0.5,0.75), mean=10, sd=2, lower.tail=TRUE) [1] 8.65102 10.00000 11. deciles: > qnorm(c(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9), mean=10, sd=2, lower.tail=TRUE) [1] 7.436897 8.316758 8.951199 9.493306 10.000000 10.506694 11.048801 11.

e) > NormalSamples <- as.data.frame(matrix(rnorm(500*1, mean=10, sd=2), ncol=1)) > rownames(NormalSamples) <- paste("sample", 1:500, sep="") > colnames(NormalSamples) <- "obs" > NormalSamples <- within(NormalSamples, {

  • mean <- rowMeans(NormalSamples[,1:1])
  • })
  • plotDistr(.x, dnorm(.x, mean=10, sd=2), cdf=FALSE, xlab="x", ylab="Density",
  • main=paste("Normal Distribution: Mean=10, Standard deviation=2"))
  • })

Cuantiles normales; media= dv=0. > qnorm(c(0.04), mean=600, sd=0.1, lower.tail=TRUE) Sol: > 600-599. [1] 0.

Principales variables aleatorias boletin.

  1. El tiempo de vida de un ordenador es una v.a. distribuida normalmente con media 6. años y varianza 2.3. Calcular el Rango Intercuartílico. ¿Cuál es la probabilidad de que la máquina dure por lo menos 5 años? ¿y qué 5 ordenadores de 8, que funcionan independientemente, duren por lo menos 5 años? Dado que un ordenador en particular tiene 5 años, ¿cuál es la probabilidad de que dure 3 años más? Rango intercuartilico= diferencia entre 3 cuartil y 1 cuartil > qnorm(c(0.25,0.75), mean=6.4, sd=1.516575, lower.tail=TRUE) [1] 5.377086 7. > 7.422914-5. [1] 2. p(x>=5) > pnorm(c(5), mean=6.4, sd=1.516575, lower.tail=FALSE) [1] 0. variable binominal y= nº ordenadores de 8 que duran mas de 5 años y= binomial (n=8, 0.822031) p(y=5) > local({
  • .Table <- data.frame(Probability=dbinom(0:8, size=8, prob=0.822031))
  • rownames(.Table) <- 0:
  • print(.Table)
  • }) Probability 0 0. 1 0. 2 0. 3 0. 4 0. 5 0.