library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(flextable)
library(MASS)
## 
## Attaching package: 'MASS'
## The following object is masked from 'package:dplyr':
## 
##     select
library(ggplot2)

Ejercicio 3.11 Un embarque de 7 televisores contiene 2 unidades defectuosas. Un hotel compra 3 de los televisores al azar. Si \(x\) es el número de unidades defectuosas que compra el hotel, calcule la distribución de probabilidad de \(X\). Exprese los resultados de forma gráfica como un histograma de probabilidad

x <- 0:2

prob <- choose(2, x) * choose(5, 3 - x) / choose(7, 3)
tabla <- data.frame(X = x,prob)

flextable(tabla)

X

prob

0

0.2857143

1

0.5714286

2

0.1428571

ggplot(tabla, aes(x = factor(X), y = prob)) +
  geom_col(fill = "hotpink4") +
  geom_text(aes(label = round(prob,3)), vjust = -0.5) +
  labs(ctitle = "Distribución de probabilidad de X",
    x = "Número de televisores defectuosos (X)",
    y = "P(X=x)"
  )

Ejercicio 3.15 Calcule la función de distribución acumulativa de la variable aleatoria X que represente el número de unidades defectuosas en el ejercicio 3.11. Luego, utilizar \(F(x)\) para calcular

  1. P (X =1)
  2. P (0 < X ≤ 2)
x <- 0:2
prob <- choose(2, x) * choose(5, 3 - x) / choose(7, 3)
tabla <- data.frame(X = x, prob = prob)
tabla$prob <- round(tabla$prob, 6)
flextable(tabla)

X

prob

0

0.285714

1

0.571429

2

0.142857

tabla$F_acum <- cumsum(tabla$prob)
tabla$F_acum <- round(tabla$F_acum, 6)
flextable(tabla)

X

prob

F_acum

0

0.285714

0.285714

1

0.571429

0.857143

2

0.142857

1.000000

p_a <- tabla$F_acum[tabla$X == 1] - tabla$F_acum[tabla$X == 0]
p_a
## [1] 0.571429
p_b <- tabla$F_acum[tabla$X == 2] - tabla$F_acum[tabla$X == 0]
p_b
## [1] 0.714286
ggplot(tabla, aes(x = X, y = F_acum)) +
  geom_step(color = "hotpink4", linewidth = 1.2) +
  geom_point(size = 3, color = "black") +
  geom_text(aes(label = round(F_acum,3)), vjust = -1) +
  labs(title = "Función de distribución acumulada de X",
       x = "Número de televisores defectuosos (X)",
       y = "F(x)")

Ejercicio 3.27 El tiempo que pasa, en horas, antes de que una parte importande de un equipo electrónico se utiliza para fabricar un reproductor de DVD empiece a fallar tiene la siguiente función de densidad:

\[ f(x)\hspace{1mm }=\begin{cases} \frac{1}{2000} \hspace{1mm }exp(\frac{-x}{2000}),\hspace{1mm } x≥0, \\ 0, x<0. \\ \end{cases} \]

  1. Calcule \(F(x)\)

  2. Determine la probabilidad de que el componente (y, por lo tanto, el reproductor de DVD) funcione durante más de 1000 horas antes de que sea necesario reemplazar el componente

  3. Determine la probabiildad de que el componente falle antes de 2000 horas.

F <- function(x) {
  ifelse(x < 0, 0, 1 - exp(-x/2000))
}
x_vals <- c(-100, 0, 500, 1000, 1500, 2000, 3000)
tabla <- data.frame(x = x_vals, F_x = round(F(x_vals), 6))
flextable(tabla)

x

F_x

-100

0.000000

0

0.000000

500

0.221199

1,000

0.393469

1,500

0.527633

2,000

0.632121

3,000

0.776870

p_b <- 1 - F(1000)
p_b
## [1] 0.6065307
p_c <- F(2000)
p_c
## [1] 0.6321206
xseq <- seq(0, 4000, by = 10)
Fvals <- 1 - exp(-xseq/2000)
tablaF <- data.frame(x = xseq, Fx = Fvals)

ggplot(tablaF, aes(x = x, y = Fx)) +
  geom_line(color = "hotpink4", size = 1) +
  labs(title = "Función de distribución acumulada",
       x = "x",
       y = "F(x)")
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.