πŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”ΉπŸ”Ή

0.0.0.0.1 <-========== PASO 1. =========->
if (!require(readxl)) install.packages("readxl")
if (!require(summarytools)) install.packages("summarytools")
if (!require(ggplot2)) install.packages("ggplot2")
if (!require(agricolae)) install.packages("agricolae")

library(readxl)
library(summarytools)
library(ggplot2)
library(agricolae)

πŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“Š

0.0.0.0.2 <-========== PASO 2. =========->

1 MI CURSO DE ESTADÍSTICA Y PROBABILIDAD - 2026

🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯🎯

1.1 SEMANA 7. Mi pΓ‘gina Web en EstadΓ­stica

πŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“ŠπŸ“Š

1.2 Clase N° 28. AQUÍ COMIENZA EL LABORATORIO 7

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.0.0.1 <-========== PASO 3. =========->

1.2.1 (i)Datos

# Si no cuentas con el archivo Excel en la carpeta datos/, se generan datos equivalentes
if (file.exists("datos/DATOS2026.xlsx")) {
  DATOS2026 <- read_excel("datos/DATOS2026.xlsx")
} else {
  set.seed(2026)
  n <- 121
  DATOS2026 <- data.frame(
    SEXO = sample(c("MASCULINO", "FEMENINO"), n, replace = TRUE, prob = c(0.55, 0.45)),
    CURSO = sample(c("CURSO A", "CURSO B", "CURSO C"), n, replace = TRUE),
    ESTRATO = sample(c("ESTRATO 1", "ESTRATO 2", "ESTRATO 3", "ESTRATO 4", "ESTRATO 5"), n, replace = TRUE),
    EDAD = round(rnorm(n, mean = 20, sd = 2)),
    ESTATURA = round(rnorm(n, mean = 170, sd = 8)),
    PESO = round(rnorm(n, mean = 68, sd = 10))
  )
}
head(DATOS2026)

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.1.0.1 <-========== PASO 4. =========->

1.2.2 (2i)Usando la aplicaciΓ³n para hacer la tabla

table_sexo <- table(DATOS2026$SEXO)
table_sexo
## 
##  FEMENINO MASCULINO 
##        50        71

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.2.0.1 <-========== PASO 5. =========->

1.2.3 (3i)GrΓ‘fico de torta para SEXO

pie_1 <- pie(table_sexo, col = c("lightblue", "pink"),
             main = "Estudio de Pastel.\n DistribuciΓ³n por sexos.", labels = table_sexo)

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.3.0.1 <-========== PASO 6. =========->

1.2.4 (4i)Construimos el diagrama de barras y el diagrama de Pastel para esta variable cualitativa

barp <- barplot(table_sexo, col = rainbow(5), border = "darkred",
                main = "GrΓ‘fico de Barras", sub = "UTB", xlab = "SEXO", ylab = "Conteo",
                ylim = c(0, max(table_sexo) + 15))
text(barp, table_sexo / 2, labels = table_sexo)

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.4.0.1 <-========== PASO 7. =========->

1.2.5 (5i)Usando la aplicaciΓ³n para hacer la tabla porcentual redondeando al entero mΓ‘s cercano

table_sexo2 <- round(table(DATOS2026$SEXO) / nrow(DATOS2026) * 100)
table_sexo2
## 
##  FEMENINO MASCULINO 
##        41        59

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.5.0.1 <-========== PASO 8. =========->

1.2.6 (6i)Construimos el diagrama de barras % y de pastel para esta variable cualitativa

barp2 <- barplot(table_sexo2, col = rainbow(5), border = "darkred",
                 main = "GrΓ‘fico de Barras Porcentual", sub = "UTB", xlab = "SEXO", ylab = "Porcentaje",
                 ylim = c(0, max(table_sexo2) + 15))
text(barp2, table_sexo2 / 2, labels = paste0(table_sexo2, "%"))

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.6.0.1 <-========== PASO 9. =========->

1.2.7 (7i)Las tablas de frecuencias y las representaciones grΓ‘ficas son dos maneras equivalentes de presentar la informaciΓ³n

pie_1 <- pie(table_sexo2, col = c("lightblue", "pink"),
             main = "Estudio de Pastel.\n DistribuciΓ³n Porcentual por Sexo.", labels = paste0(table_sexo2, "%"))

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.7.0.1 <-========== PASO 10. =========->

1.2.8 (8i)Usando la aplicaciΓ³n para hacer la tabla con dos variables SEXO y CURSO

table_3 <- table(DATOS2026$SEXO, DATOS2026$CURSO)
table_3
##            
##             CURSO A CURSO B CURSO C
##   FEMENINO       13      23      14
##   MASCULINO      29      24      18

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.8.0.1 <-========== PASO 11. =========->

1.2.9 (9i)Usando la aplicaciΓ³n para hacer el grΓ‘fico con dos variables SEXO y CURSO

barp3 <- barplot(table_3,
                 main = "GrΓ‘fico de barras CURSO vs SEXO",
                 xlab = "CURSO", ylab = "Frecuencia",
                 col = c("pink", "blue"),
                 legend.text = rownames(table_3),
                 beside = TRUE,
                 ylim = c(0, max(table_3) + 10))
text(barp3, table_3 + 2, labels = table_3)

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.9.0.1 <-========== PASO 12. =========->

1.2.10 (10i)Usando la aplicaciΓ³n para hacer la tabla con dos variables SEXO y CURSO pero usando las frecuencias relativas aproximadas

table_4 <- round(table(DATOS2026$SEXO, DATOS2026$CURSO) / nrow(DATOS2026) * 100)
table_4
##            
##             CURSO A CURSO B CURSO C
##   FEMENINO       11      19      12
##   MASCULINO      24      20      15

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.10.0.1 <-========== PASO 13. =========->

1.2.11 (11i)Usando la aplicaciΓ³n para hacer el grΓ‘fico con dos variables SEXO y CURSO pero usando las frecuencias relativas aproximadas

barp4 <- barplot(table_4,
                 main = "GrΓ‘fico de barras CURSO vs SEXO en porcentajes",
                 xlab = "CURSO", ylab = "Porcentaje (%)",
                 col = c("pink", "blue"),
                 legend.text = rownames(table_4),
                 beside = TRUE,
                 ylim = c(0, max(table_4) + 10))
text(barp4, table_4 + 2, labels = paste0(table_4, "%"))

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.11.0.1 <-========== PASO 14. =========->

1.2.12 (12i)Usando la aplicaciΓ³n para hacer la tabla con dos variables ESTRATO y CURSO

table_5 <- table(DATOS2026$ESTRATO, DATOS2026$CURSO)
table_5
##            
##             CURSO A CURSO B CURSO C
##   ESTRATO 1       9       7      11
##   ESTRATO 2      10      14      10
##   ESTRATO 3       8       7       3
##   ESTRATO 4       6      11       6
##   ESTRATO 5       9       8       2

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.12.0.1 <-========== PASO 15. =========->

1.2.13 (13i)Usando la aplicaciΓ³n para hacer el grΓ‘fico con dos variables ESTRATO y CURSO

barp5 <- barplot(table_5,
                 main = "GrΓ‘fico de barras CURSO vs ESTRATO",
                 xlab = "CURSO", ylab = "Frecuencia",
                 col = rainbow(nrow(table_5)),
                 legend.text = rownames(table_5),
                 beside = TRUE,
                 ylim = c(0, max(table_5) + 5))
text(barp5, table_5 + 1, labels = table_5)

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.13.0.1 <-========== PASO 16. =========->

1.2.14 (14i)Usando la aplicaciΓ³n para hacer la tabla con dos variables ESTRATO y SEXO

table_6 <- table(DATOS2026$ESTRATO, DATOS2026$SEXO)
table_6
##            
##             FEMENINO MASCULINO
##   ESTRATO 1       11        16
##   ESTRATO 2       17        17
##   ESTRATO 3        8        10
##   ESTRATO 4        5        18
##   ESTRATO 5        9        10

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.14.0.1 <-========== PASO 17. =========->

1.2.15 (15i)Usando la aplicaciΓ³n para hacer el grΓ‘fico con dos variables ESTRATO y SEXO

barp6 <- barplot(table_6,
                 main = "GrΓ‘fico de barras SEXO vs ESTRATO",
                 xlab = "SEXO", ylab = "Frecuencia",
                 col = rainbow(nrow(table_6)),
                 legend.text = rownames(table_6),
                 beside = TRUE,
                 ylim = c(0, max(table_6) + 5))
text(barp6, table_6 + 1, labels = table_6)

πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€

1.2.15.0.1 <-========== PASO 18. =========->

1.2.16 (16i)Tabla de Frecuencias Usando el paquete summarytools

tabla_8 <- freq(DATOS2026$EDAD, plain.ascii = FALSE, style = "rmarkdown")
tabla_8
## ### Frequencies  
## #### DATOS2026$EDAD  
## **Type:** Numeric  
## 
## |     &nbsp; | Freq | % Valid | % Valid Cum. | % Total | % Total Cum. |
## |-----------:|-----:|--------:|-------------:|--------:|-------------:|
## |     **15** |    2 |    1.65 |         1.65 |    1.65 |         1.65 |
## |     **16** |    4 |    3.31 |         4.96 |    3.31 |         4.96 |
## |     **17** |    7 |    5.79 |        10.74 |    5.79 |        10.74 |
## |     **18** |   12 |    9.92 |        20.66 |    9.92 |        20.66 |
## |     **19** |   22 |   18.18 |        38.84 |   18.18 |        38.84 |
## |     **20** |   24 |   19.83 |        58.68 |   19.83 |        58.68 |
## |     **21** |   25 |   20.66 |        79.34 |   20.66 |        79.34 |
## |     **22** |   11 |    9.09 |        88.43 |    9.09 |        88.43 |
## |     **23** |   10 |    8.26 |        96.69 |    8.26 |        96.69 |
## |     **24** |    2 |    1.65 |        98.35 |    1.65 |        98.35 |
## |     **25** |    2 |    1.65 |       100.00 |    1.65 |       100.00 |
## | **\<NA\>** |    0 |         |              |    0.00 |       100.00 |
## |  **Total** |  121 |  100.00 |       100.00 |  100.00 |       100.00 |

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.16.0.1 <-========== PASO 19. =========->

1.2.17 (17i)Resumen estadΓ­stico de la variable EDAD

summary(DATOS2026$EDAD)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   15.00   19.00   20.00   20.02   21.00   25.00

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.17.0.1 <-========== PASO 20. =========->

1.2.18 (18i)Una primera vista del diagrama de caja para la variable Edad

boxplot(DATOS2026$EDAD, horizontal = TRUE, col = rainbow(3), main = "Diagrama de Caja - EDAD")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.18.0.1 <-========== PASO 21. =========->

1.2.19 (19i)Identificamos dΓ³nde queda la mediana

x <- DATOS2026$EDAD
boxplot(x, notch = TRUE, horizontal = TRUE, col = rainbow(3), main = "Diagrama de Caja con Muesca (Mediana)")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.19.0.1 <-========== PASO 22. =========->

1.2.20 (20i)EDAD vs SEXO

x <- DATOS2026$EDAD
y <- DATOS2026$SEXO
boxplot(x ~ y, horizontal = TRUE, col = rainbow(3), main = "EDAD vs SEXO")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.20.0.1 <-========== PASO 23. =========->

1.2.21 (21i)EDAD vs ESTRATO

x <- DATOS2026$EDAD
z <- DATOS2026$ESTRATO
boxplot(x ~ z, horizontal = TRUE, col = rainbow(5), main = "EDAD vs ESTRATO")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.21.0.1 <-========== PASO 24. =========->

1.2.22 (22i)EDAD vs ESTRATO vs SEXO

ggplot(data = DATOS2026, mapping = aes(y = EDAD, x = ESTRATO, fill = SEXO)) +
  geom_boxplot() +
  scale_y_continuous(name = "EDAD") +
  scale_x_discrete(labels = abbreviate, name = "ESTRATO") +
  theme_minimal() +
  labs(title = "DistribuciΓ³n de EDAD por ESTRATO y SEXO")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.22.0.1 <-========== PASO 25. =========->

1.2.23 (23i)Estudiemos la variable ESTATURA y obtengamos sus seis medidas representativas

summary(DATOS2026$ESTATURA)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   151.0   165.0   170.0   169.9   176.0   186.0

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.23.0.1 <-========== PASO 26. =========->

1.2.24 (24i)Una primera vista del diagrama de caja para la variable ESTATURA

boxplot(DATOS2026$ESTATURA, horizontal = TRUE, col = rainbow(3), main = "Diagrama de Caja - ESTATURA")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.24.0.1 <-========== PASO 27. =========->

1.2.25 (25i)Identificamos dΓ³nde queda la mediana

x <- DATOS2026$ESTATURA
boxplot(x, notch = TRUE, horizontal = TRUE, col = rainbow(3), main = "Mediana de ESTATURA")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.25.0.1 <-========== PASO 28. =========->

1.2.26 (26i)ESTATURA vs SEXO

x <- DATOS2026$ESTATURA
y <- DATOS2026$SEXO
boxplot(x ~ y, horizontal = TRUE, col = rainbow(3), main = "ESTATURA vs SEXO")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.26.0.1 <-========== PASO 29. =========->

1.2.27 (27i)ESTATURA vs ESTRATO

x <- DATOS2026$ESTATURA
z <- DATOS2026$ESTRATO
boxplot(x ~ z, horizontal = TRUE, col = rainbow(5), main = "ESTATURA vs ESTRATO")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.27.0.1 <-========== PASO 30. =========->

1.2.28 (28i)ESTATURA vs ESTRATO vs SEXO

ggplot(data = DATOS2026, mapping = aes(y = ESTATURA, x = ESTRATO, fill = SEXO)) +
  geom_boxplot() +
  scale_y_continuous(name = "ESTATURA") +
  scale_x_discrete(labels = abbreviate, name = "ESTRATO") +
  theme_minimal() +
  labs(title = "DistribuciΓ³n de ESTATURA por ESTRATO y SEXO")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.28.0.1 <-========== PASO 31. =========->

1.2.29 (29i)Histograma y tabla de frecuencias usando Regla de Sturges

h2 <- graph.freq(DATOS2026$EDAD, col = colors()[75], main = "Histograma de EDAD (Sturges)", xlab = "EDAD")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.29.0.1 <-========== PASO 32. =========->

1.2.30 (30i)Tabla de frecuencias agrupadas Regla de Sturges

summary(h2)

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.30.0.1 <-========== PASO 33. =========->

1.2.31 (31i)PolΓ­gono de frecuencia absolutas

plot(h2, col = colors()[70], frequency = 1, main = "PolΓ­gono de Frecuencias Absolutas", xlab = "EDAD")
polygon.freq(h2, col = "red", frequency = 1, lwd = 2)

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.31.0.1 <-========== PASO 34. =========->

1.2.32 (32i)PolΓ­gono de frecuencia relativas

plot(h2, col = colors()[70], frequency = 2, main = "PolΓ­gono de Frecuencias Relativas", xlab = "EDAD")
polygon.freq(h2, col = "red", frequency = 2, lwd = 2)

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.32.0.1 <-========== PASO 35. =========->

1.2.33 (33i)Ojivas - usando R

fr_por_clase2 <- h2$counts
total_n2 <- sum(h2$counts)
fr_relativos2 <- fr_por_clase2 / total_n2
fr_porcentuales2 <- 100 * fr_relativos2

data.frame(
  Acumulada_Absoluta = cumsum(fr_por_clase2),
  Acumulada_Relativa = round(cumsum(fr_relativos2), 4),
  Acumulada_Porcentual = round(cumsum(fr_porcentuales2), 2)
)

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.33.0.1 <-========== PASO 36. =========->

1.2.34 (34i)Ojivas - frecuencias porcentuales

p4 <- cumsum(fr_porcentuales2)
plot(p4, type = "o", col = "red", main = "Ojiva de Frecuencias Porcentuales Acumuladas",
     xlab = "Clases", ylab = "Porcentaje Acumulado (%)")

1.2.34.1 <-========== AQUÍ FINALIZA EL LABORATORIO 7. =========->


1.2.34.2 <-========== AQUÍ INICIA EL LABORATORIO 8. VARIABLES RELACIONADAS =========->

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.34.2.1 <-========== PASO 37. =========->

1.2.35 (35i)Algunas tablas bivariadas - Contamos Sexo vs Curso - ambas cualitativas

table_bv1 <- table(DATOS2026$SEXO, DATOS2026$CURSO)
table_bv1
##            
##             CURSO A CURSO B CURSO C
##   FEMENINO       13      23      14
##   MASCULINO      29      24      18

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.35.0.1 <-========== PASO 38. =========->

1.2.36 (36i)Algunas tablas bivariadas - Diagrama de barras Contamos Sexo vs Curso

barp_bv1 <- barplot(table_bv1,
                    main = "GrΓ‘fico de barras CURSO vs SEXO",
                    xlab = "CURSO", ylab = "Frecuencia",
                    col = c("pink", "blue"),
                    legend.text = rownames(table_bv1),
                    beside = TRUE,
                    ylim = c(0, max(table_bv1) + 10))
text(barp_bv1, table_bv1 + 2, labels = table_bv1)

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.36.0.1 <-========== PASO 39. =========->

1.2.37 (37i)Algunas tablas bivariadas - Diagrama de barras Contamos Estrato vs Curso

table_bv2 <- table(DATOS2026$ESTRATO, DATOS2026$CURSO)
table_bv2
##            
##             CURSO A CURSO B CURSO C
##   ESTRATO 1       9       7      11
##   ESTRATO 2      10      14      10
##   ESTRATO 3       8       7       3
##   ESTRATO 4       6      11       6
##   ESTRATO 5       9       8       2

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.37.0.1 <-========== PASO 40. =========->

1.2.38 (37i b)GrΓ‘fico de barras CURSO vs ESTRATO

barp_bv2 <- barplot(table_bv2,
                    main = "GrΓ‘fico de barras CURSO vs ESTRATO",
                    xlab = "CURSO", ylab = "Frecuencia",
                    col = rainbow(nrow(table_bv2)),
                    legend.text = rownames(table_bv2),
                    beside = TRUE,
                    ylim = c(0, max(table_bv2) + 5))
text(barp_bv2, table_bv2 + 1, labels = table_bv2)

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.38.0.1 <-========== PASO 41. =========->

1.2.39 (38i)Una variable cualitativa y la otra cuantitativa: es necesario un boxplot

x <- DATOS2026$EDAD
y <- DATOS2026$SEXO
boxplot(x ~ y, horizontal = TRUE, col = rainbow(3), main = "EDAD vs SEXO")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈοΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.39.0.1 <-========== PASO 42. =========->

1.2.40 (39i)Una variable cualitativa y la otra cuantitativa: es necesario un boxplot

x <- DATOS2026$EDAD
z <- DATOS2026$ESTRATO
boxplot(x ~ z, horizontal = TRUE, xlab = "EDAD", ylab = "ESTRATOS", col = rainbow(5), main = "EDAD vs ESTRATO")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.40.0.1 <-========== PASO 43. =========->

1.2.41 (40i)Una variable cualitativa y la otra cuantitativa: es necesario un boxplot

x <- DATOS2026$ESTATURA
z <- DATOS2026$SEXO
boxplot(x ~ z, horizontal = TRUE, xlab = "ESTATURA", ylab = "SEXO", col = rainbow(3), main = "ESTATURA vs SEXO")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.41.0.1 <-========== PASO 44. =========->

1.2.42 (41i)Dos variables cuantitativas: es necesario un diagrama de dispersiΓ³n

x <- DATOS2026$ESTATURA
y <- DATOS2026$PESO
plot(x, y, xlab = "ESTATURA", ylab = "PESO", col = "blue", pch = 16, main = "Diagrama de DispersiΓ³n ESTATURA vs PESO")
abline(v = mean(x), lwd = 2, lty = 2, col = "red")
abline(h = mean(y), lwd = 2, lty = 2, col = "red")

🌈πŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆπŸ”¬βš—οΈπŸ“šπŸ’»πŸŒˆπŸ§ͺπŸŒŸπŸ’»βœ¨πŸ§ πŸ“ˆ

1.2.42.0.1 <-========== PASO 45. =========->

1.2.43 [(42i)]{style=