#Ejercicio 1: Aumento de peso en los cerdos
datos_ejercicio1 <- read_xlsx('datos_taller1.xlsx', sheet = "Caso1") %>% clean_names()
head(datos_ejercicio1)
## # A tibble: 6 × 3
## cerdo dieta aumento_de_peso_kg
## <dbl> <chr> <dbl>
## 1 1 A 16.2
## 2 2 A 15.7
## 3 3 A 15.5
## 4 4 A 16.1
## 5 5 A 13.7
## 6 6 A 14.9
summary(datos_ejercicio1)
## cerdo dieta aumento_de_peso_kg
## Min. : 1.00 Length:24 Min. :13.20
## 1st Qu.: 6.75 Class :character 1st Qu.:14.22
## Median :12.50 Mode :character Median :15.65
## Mean :12.50 Mean :15.42
## 3rd Qu.:18.25 3rd Qu.:16.32
## Max. :24.00 Max. :17.70
datos_ejercicio1$aumento_de_peso_kg <- as.numeric(as.character(datos_ejercicio1$aumento_de_peso_kg))
datos_ejercicio1$dieta<- factor(datos_ejercicio1$dieta) #CONVERTIR EN VARIABLE CATEGÓRICA
summary(datos_ejercicio1)
## cerdo dieta aumento_de_peso_kg
## Min. : 1.00 A:8 Min. :13.20
## 1st Qu.: 6.75 B:8 1st Qu.:14.22
## Median :12.50 C:8 Median :15.65
## Mean :12.50 Mean :15.42
## 3rd Qu.:18.25 3rd Qu.:16.32
## Max. :24.00 Max. :17.70
library(dplyr)
estadisticas <- datos_ejercicio1 %>%
group_by(dieta) %>%
summarise(
Media = mean(aumento_de_peso_kg),
Desviacion = sd(aumento_de_peso_kg)
)
print(estadisticas)
## # A tibble: 3 × 3
## dieta Media Desviacion
## <fct> <dbl> <dbl>
## 1 A 15.5 0.857
## 2 B 16.7 0.653
## 3 C 14.0 0.548
boxplot(aumento_de_peso_kg ~ dieta , data = datos_ejercicio1,
xlab = "dieta",
ylab = "Aumento de peso (kg)",
main = "Aumento de peso debido a dieta",
col = c("lightblue", "lightgreen", "lightpink"))
library(ggplot2)
datos_ejercicio1 %>%
ggplot(aes(y = aumento_de_peso_kg, fill = dieta)) +
geom_boxplot() +
labs(x = "dieta",
y = "Aumento de peso en kg",
title = "Boxplot de aumento de peso vs dieta") +
theme(legend.position = "bottom")
resultado_anova <- aov(aumento_de_peso_kg ~ dieta, data = datos_ejercicio1)
summary(resultado_anova)
## Df Sum Sq Mean Sq F value Pr(>F)
## dieta 2 28.71 14.353 29.47 8.02e-07 ***
## Residuals 21 10.23 0.487
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Análisis de residuales
residuos <- residuals(resultado_anova)
# Normalidad de residuos
shapiro.test(residuos)
##
## Shapiro-Wilk normality test
##
## data: residuos
## W = 0.95349, p-value = 0.3219
# Interpretación:
# p > 0.05: No se rechaza la normalidad.
# p ≤ 0.05: Se rechaza la normalidad.
qqnorm(residuos)
qqline(residuos)
test_levene <- leveneTest(aumento_de_peso_kg ~ dieta, data = datos_ejercicio1)
print(test_levene)
## Levene's Test for Homogeneity of Variance (center = median)
## Df F value Pr(>F)
## group 2 0.2276 0.7984
## 21
# Interpretación:
# p > 0.05: No se rechaza la homogeneidad de varianzas.
# p ≤ 0.05: Se rechaza la homogeneidad de varianzas.
tukey <- TukeyHSD(resultado_anova)
print(tukey)
## Tukey multiple comparisons of means
## 95% family-wise confidence level
##
## Fit: aov(formula = aumento_de_peso_kg ~ dieta, data = datos_ejercicio1)
##
## $dieta
## diff lwr upr p adj
## B-A 1.2125 0.3329837 2.0920163 0.0061370
## C-A -1.4625 -2.3420163 -0.5829837 0.0011483
## C-B -2.6750 -3.5545163 -1.7954837 0.0000005
plot(tukey, las = 1)
# si el valor es mayor a 0.05 no existe diferencia entre los grupos
#Ejercicio 2: Calificaciones según el método empleado
datos_ejercicio2 <- read_xlsx('datos_taller1.xlsx', sheet = "Caso2") %>% clean_names()
head(datos_ejercicio2)
## # A tibble: 6 × 3
## estudiante metodo calificacion
## <dbl> <chr> <dbl>
## 1 1 Tradicional 75.1
## 2 2 Tradicional 80
## 3 3 Tradicional 78.6
## 4 4 Tradicional 82.6
## 5 5 Tradicional 77.3
## 6 6 Tradicional 79.7
summary(datos_ejercicio2)
## estudiante metodo calificacion
## Min. : 1.00 Length:30 Min. :68.00
## 1st Qu.: 8.25 Class :character 1st Qu.:71.72
## Median :15.50 Mode :character Median :79.15
## Mean :15.50 Mean :78.99
## 3rd Qu.:22.75 3rd Qu.:86.03
## Max. :30.00 Max. :91.50
datos_ejercicio2$metodo<- factor(datos_ejercicio2$metodo) #CONVERTIR EN VARIABLE CATEGÓRICA
summary(datos_ejercicio2)
## estudiante metodo calificacion
## Min. : 1.00 En Línea :10 Min. :68.00
## 1st Qu.: 8.25 Interactivo:10 1st Qu.:71.72
## Median :15.50 Tradicional:10 Median :79.15
## Mean :15.50 Mean :78.99
## 3rd Qu.:22.75 3rd Qu.:86.03
## Max. :30.00 Max. :91.50
datos_ejercicio2$calificacion <- as.numeric(as.character(datos_ejercicio2$calificacion))
# Ahora realiza el cálculo
estadisticas <- datos_ejercicio2 %>%
group_by(metodo) %>%
summarise(
Media = mean(calificacion, na.rm = TRUE),
Desviacion = sd(calificacion, na.rm = TRUE)
)
print(estadisticas)
## # A tibble: 3 × 3
## metodo Media Desviacion
## <fct> <dbl> <dbl>
## 1 En Línea 70.3 1.71
## 2 Interactivo 87.8 2.16
## 3 Tradicional 78.9 2.34
boxplot(calificacion ~ metodo, data = datos_ejercicio2,
xlab = "Método",
ylab = "Calificación",
main = "Calificación de acuerdo con el método empleado",
col = c("lightblue", "lightgreen", "lightpink"))
library(ggplot2)
datos_ejercicio2 %>%
ggplot(aes(y = datos_ejercicio2$calificacion, fill = datos_ejercicio2$metodo)) +
geom_boxplot() +
labs(x = "método",
y = "calificación",
title = "Boxplot de la calificación según el método") +
theme(legend.position = "bottom")
## Warning: Use of `datos_ejercicio2$calificacion` is discouraged.
## ℹ Use `calificacion` instead.
## Warning: Use of `datos_ejercicio2$metodo` is discouraged.
## ℹ Use `metodo` instead.
# Paso 5: Realizar el ANOVA
resultado_anova <- aov(calificacion ~ metodo, data = datos_ejercicio2)
summary(resultado_anova)
## Df Sum Sq Mean Sq F value Pr(>F)
## metodo 2 1522.6 761.3 174.5 3.61e-16 ***
## Residuals 27 117.8 4.4
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Análisis de residuales
residuos <- residuals(resultado_anova)
# Normalidad de residuos
shapiro.test(residuos)
##
## Shapiro-Wilk normality test
##
## data: residuos
## W = 0.97515, p-value = 0.6873
# Interpretación:
# p > 0.05: No se rechaza la normalidad.
# p ≤ 0.05: Se rechaza la normalidad.
qqnorm(residuos)
qqline(residuos)
leveneTest(calificacion ~ metodo, data = datos_ejercicio2)
## Levene's Test for Homogeneity of Variance (center = median)
## Df F value Pr(>F)
## group 2 0.6283 0.5411
## 27
# Interpretación:
# p > 0.05: No se rechaza la homogeneidad de varianzas.
# p ≤ 0.05: Se rechaza la homogeneidad de varianzas.
# Paso 7: Pruebas Post-hoc
tukey <- TukeyHSD(resultado_anova)
print(tukey)
## Tukey multiple comparisons of means
## 95% family-wise confidence level
##
## Fit: aov(formula = calificacion ~ metodo, data = datos_ejercicio2)
##
## $metodo
## diff lwr upr p adj
## Interactivo-En Línea 17.45 15.134097 19.765903 0
## Tradicional-En Línea 8.62 6.304097 10.935903 0
## Tradicional-Interactivo -8.83 -11.145903 -6.514097 0
plot(tukey, las = 1)
# si el valor es mayor a 0.05 no existe diferencia entre los grupos
#Tecer ejercicio: Reducción de presión según el tratamiento empleado
datos_ejercicio3 <- read_xlsx('datos_taller1.xlsx', sheet = "Caso3") %>% clean_names()
head(datos_ejercicio3)
## # A tibble: 6 × 3
## paciente tratamiento reduccion_de_presion_mm_hg
## <dbl> <chr> <dbl>
## 1 1 X 8
## 2 2 X 10
## 3 3 X 9
## 4 4 X 7
## 5 5 X 8
## 6 6 X 9
summary(datos_ejercicio3)
## paciente tratamiento reduccion_de_presion_mm_hg
## Min. : 1.0 Length:27 Min. : 4.000
## 1st Qu.: 7.5 Class :character 1st Qu.: 6.000
## Median :14.0 Mode :character Median : 9.000
## Mean :14.0 Mean : 8.815
## 3rd Qu.:20.5 3rd Qu.:12.000
## Max. :27.0 Max. :14.000
datos_ejercicio3$tratamiento <- factor(datos_ejercicio3$tratamiento) #CONVERTIR EN VARIABLE CATEGÓRICA
summary(datos_ejercicio3)
## paciente tratamiento reduccion_de_presion_mm_hg
## Min. : 1.0 X:9 Min. : 4.000
## 1st Qu.: 7.5 Y:9 1st Qu.: 6.000
## Median :14.0 Z:9 Median : 9.000
## Mean :14.0 Mean : 8.815
## 3rd Qu.:20.5 3rd Qu.:12.000
## Max. :27.0 Max. :14.000
library(dplyr)
estadisticas <- datos_ejercicio3 %>%
group_by(tratamiento) %>%
summarise(
Media = mean(reduccion_de_presion_mm_hg),
Desviacion = sd(reduccion_de_presion_mm_hg)
)
print(estadisticas)
## # A tibble: 3 × 3
## tratamiento Media Desviacion
## <fct> <dbl> <dbl>
## 1 X 8.67 1
## 2 Y 12.7 1
## 3 Z 5.11 0.782
boxplot(reduccion_de_presion_mm_hg ~ tratamiento, data = datos_ejercicio3,
xlab = "tratamiento",
ylab = "Reduccion_de_presion_mm_hg",
main = "reducción de presión en función del tratamiento",
col = c("lightblue", "lightgreen", "lightpink"))
library(ggplot2)
datos_ejercicio3 %>%
ggplot(aes(y =datos_ejercicio3$reduccion_de_presion_mm_hg, fill = datos_ejercicio3$tratamiento)) +
geom_boxplot() +
labs(x = "tratamiento",
y = "reduccion_de_presion_mm_hg",
title = "Boxplot de la reducción de la presión frente al tratamiento") +
theme(legend.position = "bottom")
## Warning: Use of `datos_ejercicio3$reduccion_de_presion_mm_hg` is discouraged.
## ℹ Use `reduccion_de_presion_mm_hg` instead.
## Warning: Use of `datos_ejercicio3$tratamiento` is discouraged.
## ℹ Use `tratamiento` instead.
resultado_anova <- aov(reduccion_de_presion_mm_hg ~ tratamiento, data = datos_ejercicio3)
summary(resultado_anova)
## Df Sum Sq Mean Sq F value Pr(>F)
## tratamiento 2 257.19 128.59 147.7 3.23e-14 ***
## Residuals 24 20.89 0.87
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#Análisis de residuales
residuos <- residuals(resultado_anova)
# Normalidad de residuos
shapiro.test(residuos)
##
## Shapiro-Wilk normality test
##
## data: residuos
## W = 0.94111, p-value = 0.1297
# Interpretación:
# p > 0.05: No se rechaza la normalidad.
# p ≤ 0.05: Se rechaza la normalidad.
qqnorm(residuos)
qqline(residuos)
leveneTest(datos_ejercicio3$reduccion_de_presion_mm_hg ~ tratamiento, data = datos_ejercicio3)
## Levene's Test for Homogeneity of Variance (center = median)
## Df F value Pr(>F)
## group 2 0.381 0.6873
## 24
# Interpretación:
# p > 0.05: No se rechaza la homogeneidad de varianzas.
# p ≤ 0.05: Se rechaza la homogeneidad de varianzas.
tukey <- TukeyHSD(resultado_anova)
print(tukey)
## Tukey multiple comparisons of means
## 95% family-wise confidence level
##
## Fit: aov(formula = reduccion_de_presion_mm_hg ~ tratamiento, data = datos_ejercicio3)
##
## $tratamiento
## diff lwr upr p adj
## Y-X 4.000000 2.901717 5.098283 0e+00
## Z-X -3.555556 -4.653839 -2.457273 1e-07
## Z-Y -7.555556 -8.653839 -6.457273 0e+00
plot(tukey, las = 1)
# si el valor es mayor a 0.05 no existe diferencia entre los grupos