Instrucciones: El presente taller tiene como objetivo evaluar la relación funcional entre variables críticas en escenarios biológicos, toxicológicos y de ingeniería de alimentos. Para cada caso, el alumno deberá:
1. Cargar los datos en R.
2. Ajustar el modelo de regresión lineal simple (\(Y = \beta_0 + \beta_1x + \epsilon\)). 3. Generar un panel de 4 gráficas de diagnóstico para verificar los supuestos de Gauss-Markov.
4. Responder a las preguntas de análisis crítico.
Contexto: En la neurofisiología moderna, se estudia la degradación de las funciones ejecutivas bajo condiciones de estrés circadiano. Este experimento busca cuantificar el umbral de fatiga neuronal.
Variable Independiente (\(x\)): Tiempo de vigilia forzada. Representa la acumulación de adenosina en el sistema nervioso central.
Variable Dependiente (\(y\)): Tasa de error en tareas aritméticas simples.
df_sueno <- data.frame( x = c(8, 8, 12, 12, 16, 16, 20, 20, 24, 24), y = c(8, 6, 6, 10, 8, 14, 14, 12, 16, 12) )
# 1. Ajuste del modelo
modelo1 <- lm(y ~ x, data = df_sueno)
m1<-summary(modelo1)
print(m1)
##
## Call:
## lm(formula = y ~ x, data = df_sueno)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.70 -2.00 0.35 1.45 3.40
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.0000 2.1266 1.411 0.19602
## x 0.4750 0.1253 3.791 0.00531 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2.242 on 8 degrees of freedom
## Multiple R-squared: 0.6423, Adjusted R-squared: 0.5976
## F-statistic: 14.37 on 1 and 8 DF, p-value: 0.005308
# 2. Generación del Panel de Diagnóstico (4 gráficas en una)
par(mfrow = c(2, 2))
plot(modelo1)
par(mfrow = c(1, 1)) # Resetear panel
Contexto: En Ingeniería de Alimentos y Farmacia, la estabilidad de un compuesto activo es función de la energía cinética del sistema. Según la ecuación de Arrhenius, la temperatura afecta la velocidad de reacción.
Variable Independiente (\(x\)): Temperatura de almacenamiento (°F).
Variable Dependiente (\(y\)): Potencia biológica residual (capacidad de inhibición bacteriana).
df_antibiotico <- data.frame( temp = rep(c(30, 50, 70, 90), each = 3), potencia = c(38, 43, 29, 32, 26, 33, 19, 27, 23, 14, 19, 21) )
modelo2 <- lm(potencia ~ temp, data = df_antibiotico)
m2<-summary(modelo2)
print(m2)
##
## Call:
## lm(formula = potencia ~ temp, data = df_antibiotico)
##
## Residuals:
## Min 1Q Median 3Q Max
## -7.500 -3.667 1.500 2.917 6.500
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 46.00000 3.60640 12.755 1.64e-07 ***
## temp -0.31667 0.05632 -5.622 0.000221 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4.363 on 10 degrees of freedom
## Multiple R-squared: 0.7597, Adjusted R-squared: 0.7356
## F-statistic: 31.61 on 1 and 10 DF, p-value: 0.0002207
par(mfrow = c(2, 2))
plot(modelo2)
par(mfrow = c(1, 1)) # Resetear panel
Contexto: Se aborda la contaminación térmica en ecosistemas acuáticos. Cuando una planta industrial descarga agua a altas temperaturas en un río, la homeostasis de los peces se ve comprometida.
Variable Independiente (\(x\)): Tiempo de exposición al estrés térmico.
Variable Dependiente (\(y\)): Proporción de individuos que logran mantener sus funciones vitales.
df_peces_surv <- data.frame( tiempo = seq(0.10, 0.55, by = 0.05), sobrevivientes = c(1.00, 0.95, 0.95, 0.90, 0.85, 0.70, 0.65, 0.60, 0.55, 0.40) )
modelo3 <- lm(tiempo ~ sobrevivientes, data = df_peces_surv)
m3<-summary(modelo3)
print(m3)
##
## Call:
## lm(formula = tiempo ~ sobrevivientes, data = df_peces_surv)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.046474 -0.028450 0.005272 0.023489 0.044224
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.87515 0.04187 20.90 2.88e-08 ***
## sobrevivientes -0.72868 0.05373 -13.56 8.39e-07 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.03278 on 8 degrees of freedom
## Multiple R-squared: 0.9583, Adjusted R-squared: 0.9531
## F-statistic: 183.9 on 1 and 8 DF, p-value: 8.393e-07
# 2. Generación del Panel de Diagnóstico (4 gráficas en una)
par(mfrow = c(2, 2))
plot(modelo3)
par(mfrow = c(1, 1)) # Resetear panel
Contexto: La alometría estudia las relaciones de proporción entre diferentes partes del cuerpo de un organismo durante su crecimiento. En tortugas, el diámetro y la altura del caparazón mantienen una relación geométrica rígida.
Variable Independiente (\(x\)): Altura del caparazón.
Variable Dependiente (\(y\)): Diámetro medio.
Contexto: La EPA (Environmental Protection Agency) utiliza la Concentración Letal Media (LC50) para regular vertidos industriales. Existen dos protocolos: el estático (agua estancada) y el de flujo (agua renovada). Este último es más costoso pero más realista.
Variable Independiente (\(x\)): Medición LC50 en condiciones estáticas (el estándar “barato”).
Variable Dependiente (\(y\)): Medición LC50 en condiciones de flujo (el estándar “oro”
df_tortugas <- data.frame( altura = c(78, 65, 77, 76, 72, 76, 75, 77, 69, 65), diametro = c(185, 194, 173, 200, 179, 213, 134, 191, 177, 199) )
modelo4 <- lm(altura ~ diametro, data = df_tortugas)
m4<-summary(modelo4)
print(m4)
##
## Call:
## lm(formula = altura ~ diametro, data = df_tortugas)
##
## Residuals:
## Min 1Q Median 3Q Max
## -7.674 -3.490 1.899 3.885 5.017
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 79.33533 15.05294 5.270 0.000755 ***
## diametro -0.03434 0.08109 -0.423 0.683131
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 5.233 on 8 degrees of freedom
## Multiple R-squared: 0.02192, Adjusted R-squared: -0.1003
## F-statistic: 0.1793 on 1 and 8 DF, p-value: 0.6831
# 2. Generación del Panel de Diagnóstico (4 gráficas en una)
par(mfrow = c(2, 2))
plot(modelo4)
par(mfrow = c(1, 1)) # Resetear panel
df_toxicologia <- data.frame( estatica = c(39, 37.5, 22.2, 17.5, 0.64, 0.45, 2.62, 2.36, 32, 0.77), flujo = c(23, 22.3, 9.4, 9.7, 0.15, 0.28, 0.75, 0.51, 28, 0.39) )
modelo5 <- lm(estatica ~ flujo, data = df_toxicologia)
m<-summary(modelo4)
print(m4)
##
## Call:
## lm(formula = altura ~ diametro, data = df_tortugas)
##
## Residuals:
## Min 1Q Median 3Q Max
## -7.674 -3.490 1.899 3.885 5.017
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 79.33533 15.05294 5.270 0.000755 ***
## diametro -0.03434 0.08109 -0.423 0.683131
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 5.233 on 8 degrees of freedom
## Multiple R-squared: 0.02192, Adjusted R-squared: -0.1003
## F-statistic: 0.1793 on 1 and 8 DF, p-value: 0.6831
# 2. Generación del Panel de Diagnóstico (4 gráficas en una)
par(mfrow = c(2, 2))
plot(modelo5)
par(mfrow = c(1, 1)) # Resetear panel