Equipo de Trabajo

El presente trabajo ha sido realizado por el siguiente equipo:

Andrea Valderrama Salazar

Estudiante de Ingeniería Agrícola

Angie Tatiana Pinzon Castillo

Estudiante de Ingeniería Agrícola

Paula Hernandez Prada

Estudiante de Ingeniería Química

Daniel David Peña Esquibel

Estudiante de Ingeniería

library(dplyr)
library(ggplot2)
library(MASS)

Punto 1

  1. Una población de electores contiene 40% de republicanos y 60% de demócratas. Se publica que 30% de los republicanos y 70% de los demócratas están a favor de un tema de elección.

    1. Elabore un dataframe que resuma la información.
    R <- 0.4
    D <- 0.6
    RF <- 0.3
    DF <- 0.7
     df1 <- matrix(c(
      0.3*0.4      , 0.7*0.6      , (0.3*0.4)+ 0.7*0.6     ,  
      0.4-(0.3*0.4), 0.6-(0.7*0.6), 1- ((0.3*0.4)+ 0.7*0.6),  
      0.4          ,  0.6         ,  1    
    
    ), nrow = 3, byrow = TRUE)
    
    rownames(df1) <- c("Favor", "No Favor", "Sum")
    colnames(df1) <- c("R", "D", "Sum")
    df1 <- data.frame(df1);df1

b.Suponga que una persona seleccionada al azar de esta población está a favor del tema en cuestión. Encuentre la probabilidad condicional de que esta persona sea un demócrata.

b. La probabilidad condicional esta dada por la siguiente formula:

\[ P(D|F) = \frac{P(D n F)}{{P(F)}} \]

P_D_F <- df1[1,2]/df1[1,3];P_D_F
## [1] 0.7777778

Punto 2

  1. De los artículos producidos diariamente por una fábrica, 40% provienen de la línea I y 60% de la línea II. La línea I tiene un porcentaje de 8% de piezas defectuosas en tanto que la II tiene un porcentaje de 10%.

a. Elabore un dataframe con la información del problema.

I <- 0.4
II <- 0.6
DE_I <- 0.08
DE_II <- 0.1
 df2 <- matrix(c(
  0.08*0.4      , 0.1*0.6      , (0.08*0.4)+ 0.1*0.6     ,  
  0.4-(0.08*0.4), 0.6-(0.1*0.6), 1- ((0.08*0.4)+ 0.1*0.6),  
  0.4          ,  0.6         ,  1    
  
), nrow = 3, byrow = TRUE)

rownames(df2) <- c("Defectuosas", "No Defectuosas", "Sum")
colnames(df2) <- c("I", "II", "Sum")
df2 <- data.frame(df2);df2

b. Si se escoge al azar una pieza de la producción diaria, encuentre la probabilidad de que no esté defectuosa.

Linea <- c("I", "II")
Produccion <- c(0.4, 0.6)
No_Defectuosa <- c(0.92, 0.90)
df <- data.frame(Linea, Produccion, No_Defectuosa)

P_ND <- df$No_Defectuosa[1] * df$Produccion[1] +
        df$No_Defectuosa[2] * df$Produccion[2]

cat("La probabilidad de que una pieza NO esté defectuosa es:", round(P_ND, 3), "\n")
## La probabilidad de que una pieza NO esté defectuosa es: 0.908

Punto 3

3.Cuando el departamento de salud examinó pozos privados en un condado en busca de dos impurezas que comúnmente se hallan en el agua potable, se encontró que 20% de los pozos no tenían ninguna impureza, 40% tenían la impureza A y 50% tenían la impureza B. (Obviamente, algunos tenían ambas impurezas.) Si un pozo de los existentes en el condado se escoge al azar, a. Encuentre la distribución de probabilidad para X, el número de impurezas halladas en el pozo y grafíquela. b. Encuentre la función de distribución acumulativa para x y con base en ella encuentre F(1)

a. Encuentre la distribución de probabilidad para X, el número de impurezas halladas en el pozo y grafíquela.

# Valores de X (número de impurezas)
x <- 0:2

# Distribución de probabilidad de X
px <- c(0.20, 0.70, 0.10)

# Crear dataframe
dist_x <- data.frame(
  X = x,
  Probabilidad = px
)

# Mostrar la distribución
dist_x
# GRAFICA 
library(ggplot2)

# Gráfico de barras de la distribución
ggplot(dist_x, aes(x = factor(X), y = Probabilidad)) +
  geom_bar(stat = "identity", fill = "darkred") +
  labs(title = "Distribución de Probabilidad de X",
       x = "Número de impurezas (X)",
       y = "P(X = x)") +
  theme_minimal()

b. Encuentre la función de distribución acumulativa para x y con base en ella encuentre F(1)

# Valores de X (número de impurezas)
x <- 0:2

# Distribución de probabilidad de X
px <- c(0.20, 0.70, 0.10)

# Distribución acumulada
Fx <- c(
  px[1],                       # F(0) = P(X = 0)
  px[1] + px[2],               # F(1) = P(X = 0) + P(X = 1)
  px[1] + px[2] + px[3]        # F(2) = P(X = 0) + P(X = 1) + P(X = 2)
)

#  distribución y función acumulativa
dist_x <- data.frame(
  X = x,
  Probabilidad = px,
  F_acumulada = Fx
)

dist_x
cat("Función de distribución acumulativa para F(1) = ", Fx[2])
## Función de distribución acumulativa para F(1) =  0.9

Punto 4

  1. Una gasolinera opera dos bombas, cada una de las cuales puede bombear hasta 10,000 galones de gasolina en un mes. La cantidad total de gasolina bombeada en un mes es una variable aleatoria X (medida en 10,000 galones) con una función de densidad de probabilidad dada abajo.

a. Dibuje la función de densidad

f <- function(x) {
  ifelse(x >= 0 & x <= 1, x,
         ifelse(x > 1 & x <= 1.5, 1, 0))
}

# a) Graficar f(x)
x_vals <- seq(0, 1.5, by = 0.01)
fx_vals <- f(x_vals)

plot(x_vals, fx_vals, type = "l", lwd = 2, col = "chocolate",
     main = "a) Función de densidad f(x)",
     xlab = "x (decenas de miles de galones)", ylab = "f(x)")
abline(h = 0, col = "gray")

b. Encuentre F(x).

# b) Calcular valores de F(x) teniendo en cuenta que es con la función integrate 
F <- function(x) {
  if (x < 0) {
    return(0)
  } else if (x <= 1.5) {
    result <- integrate(f, lower = 0, upper = x)
    return(result$value)
  } else {
    return(1)
  }
}

# b) 
Fx_vals <- numeric(length(x_vals))
for (i in seq_along(x_vals)) {
  Fx_vals[i] <- F(x_vals[i])
}

plot(x_vals, Fx_vals, type = "l", lwd = 2, col = "brown",
     main = "b) Función de distribución acumulada F(x)",
     xlab = "x", ylab = "F(x)")
abline(h = c(0, 1), col = "gray", lty = 2)

c. Encuentre P(0.5 ≤ X ≤ 1.2)

# c) Calcular P(0.5 ≤ X ≤ 1.2) usando F(x)
P_intervalo <- F(1.2) - F(0.5)

cat(" P(0.5 ≤ X ≤ 1.2) =", P_intervalo)
##  P(0.5 ≤ X ≤ 1.2) = 0.575

Punto 5

  1. El tiempo de falla (en cientos de horas) para un transistor es una variable aleatoria Y con función de distribución dada abajo.
  1. Dibuje F(y)
  2. Dibuje f(y)
  3. Encuentre la probabilidad de que el transistor opere durante al menos 200 horas.

\[ F(y) = \begin{cases} 0, & y < 0 \\\\ 1 - e^{-y^2}, & y \geq 0 \end{cases} \]

F.y <- function(y){
  ifelse(y < 0, 0, 1 - exp(-y^2))}

f.y <- function(y){
  ifelse(y < 0, 0, 2*y*exp(-y^2))}


y_vals <- seq(-1, 3, by = 0.01)
Fy_vals <- sapply(y_vals, F.y)
fy_vals <- sapply(y_vals, f.y)

# Grafica F(y)
library(ggplot2)
df1 <- data.frame(y = y_vals, Fy = Fy_vals)
ggplot(df1, aes(x = y, y = Fy)) +
  geom_line(col = "blue") +
  labs(title = "Funcion de distribucion F(y)", x = "y", y = "F(y)") +
  theme_minimal()

# Grafica f(y)
df2 <- data.frame(y = y_vals, fy = fy_vals)
ggplot(df2, aes(x = y, y = fy)) +
  geom_line(col = "purple") +
  labs(title = "Funcion de densidad f(y)", x = "y", y = "f(y)") +
  theme_minimal()

F_2 <- F.y(2)
P <- 1 - F_2
cat("La probabilidad de que el transistor opere al menos 200 horas es:", round(P, 4))
## La probabilidad de que el transistor opere al menos 200 horas es: 0.0183

Punto 6

  1. La proporción de tiempo X en la que un robot industrial está en operación durante una semana de 40 horas es una variable aleatoria con función de densidad dada abajo
  1. Encuentre F(x) y dibújela.
  2. Para el robot motivo de estudio, la utilidad Y para una semana está dada por Y = 200X – 60. Encuentre V(Y)
library(ggplot2)
x <- seq(0, 1, by = 0.01)
fx <- 2 * x
Fx <- x^2
df <- data.frame(x = x, fx = fx, Fx = Fx)

# Gráfico de f(x)
ggplot(df, aes(x = x, y = fx)) +
  geom_line(color = "blue", size = 1.2) +
  labs(title = "Función de Densidad f(x) = 2x",
       x = "x", y = "f(x)") +
  theme_minimal()

E_X <- integrate(function(x) x * 2 * x, lower = 0, upper = 1)$value  # ∫ x * f(x)
E_X  
## [1] 0.6666667
E_X2 <- integrate(function(x) x^2 * 2 * x, lower = 0, upper = 1)$value  # ∫ x^2 * f(x)
E_X2
## [1] 0.5
Var_X <- E_X2 - E_X^2
Var_X 
## [1] 0.05555556
Var_Y <- 200^2 * Var_X
Var_Y
## [1] 2222.222
library(MASS) 
valor_decimal <- Var_Y
fractions(valor_decimal)
## [1] 20000/9