SEMANA 7. Mi página
Web en Estadística
Clase N° 28. AQUÍ
COMIENZA EL LABORATORIO 7
(1i)
Datos
DATOS2026 <- read_excel("00. DATOS202460ULTIMOS25 (1).xlsx")
head(DATOS2026)
## # A tibble: 6 × 16
## CURSO ASISTENCIA2 ASISTENCIA1 `PARCIAL 1` `PARCIAL 2` NRC PROGRAMA EDAD
## <chr> <dbl> <dbl> <chr> <chr> <dbl> <chr> <dbl>
## 1 PROBABIL… 100 90 3.6 4.3 2314 F_NEGOC… 20
## 2 ESTADIST… 70 75 0.9 2.5 1136 DERECHO 18
## 3 PROBABIL… 85 95 3.9 3.8 2314 F_NEGOC… 19
## 4 PROBABIL… 5 5 2.9 0.5 2314 MECANICA 18
## 5 ESTADIST… 20 70 3.7 0.55 1009 PSICOLO… 19
## 6 ESTADIST… 100 100 0.9 2.95 2313 PSICOLO… 20
## # ℹ 8 more variables: PESO <dbl>, ESTATURA <dbl>, SEXO <chr>,
## # ESTADO_CIVIL <chr>, ESTRATO <chr>, URBANO <chr>, TRANSPORTE <chr>,
## # GR_SANGUINEO <chr>
(2i) Usando
la aplicación para hacer la tabla
table_sexo <- table(DATOS2026$SEXO)
table_sexo
##
## Femenino Masculino
## 42 32
(3i)
Gráfico de torta para SEXO
pie(table_sexo,
col = c("pink", "lightblue"),
main = "Estudio de Pastel.\nDistribución por sexo.",
labels = paste(names(table_sexo), "\n", table_sexo))

(4i)
Construimos el diagrama de barras para SEXO
barp <- barplot(table_sexo,
col = rainbow(2),
border = "darkred",
main = "Gráfico de Barras por SEXO",
sub = "UTB",
xlab = "SEXO",
ylab = "Conteo",
ylim = c(0, max(table_sexo) + 10))
text(barp, table_sexo + 2, labels = table_sexo)

(5i) Tabla
porcentual redondeada al entero más cercano
table_sexo2 <- round(table(DATOS2026$SEXO) / nrow(DATOS2026) * 100)
table_sexo2
##
## Femenino Masculino
## 57 43
(6i)
Diagrama de barras % para SEXO
barp2 <- barplot(table_sexo2,
col = rainbow(2),
border = "darkred",
main = "Gráfico de Barras Porcentual",
sub = "UTB",
xlab = "SEXO",
ylab = "Porcentaje (%)",
ylim = c(0, max(table_sexo2) + 10))
text(barp2, table_sexo2 + 3, labels = paste0(table_sexo2, "%"))

(7i)
Representación en gráfico de pastel con porcentajes
pie(table_sexo2,
col = c("pink", "lightblue"),
main = "Estudio de Pastel.\nDistribución Porcentual por Sexo.",
labels = paste(names(table_sexo2), "\n", table_sexo2, "%"))

(8i) Tabla
con dos variables: SEXO y CURSO
table_3 <- table(DATOS2026$SEXO, DATOS2026$CURSO)
table_3
##
## ESTADISTICAI PROBABILIDAD
## Femenino 16 26
## Masculino 10 22
(9i)
Gráfico de barras agrupadas: SEXO y CURSO
barp3 <- barplot(table_3,
main = "Gráfico de barras CURSO vs SEXO",
xlab = "CURSO",
ylab = "Frecuencia",
col = c("pink", "lightblue"),
legend.text = rownames(table_3),
beside = TRUE,
ylim = c(0, max(table_3) + 5))
text(barp3, table_3 + 1, labels = table_3)

(10i)
Tabla bivariada SEXO y CURSO con frecuencias relativas
porcentuales
table_4 <- round(table(DATOS2026$SEXO, DATOS2026$CURSO) / nrow(DATOS2026) * 100)
table_4
##
## ESTADISTICAI PROBABILIDAD
## Femenino 22 35
## Masculino 14 30
(11i)
Gráfico de barras bivariado porcentual: CURSO vs SEXO
barp4 <- barplot(table_4,
main = "Gráfico de barras CURSO vs SEXO en porcentajes",
xlab = "CURSO",
ylab = "Porcentaje (%)",
col = c("pink", "lightblue"),
legend.text = rownames(table_4),
beside = TRUE,
ylim = c(0, max(table_4) + 5))
text(barp4, table_4 + 1, labels = paste0(table_4, "%"))

(12i)
Tabla bivariada de frecuencias absolutas: CURSO vs ESTRATO
table_5 <- table(DATOS2026$ESTRATO, DATOS2026$CURSO)
table_5
##
## ESTADISTICAI PROBABILIDAD
## I 5 10
## II 7 18
## III 9 9
## IV 5 5
## V 0 5
(13i)
Gráfico de barras agrupadas: CURSO vs ESTRATO
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) + 3))
text(barp5, table_5 + 0.5, labels = table_5)

(14i)
Tabla bivariada de frecuencias absolutas: ESTRATO vs SEXO
table_6 <- table(DATOS2026$ESTRATO, DATOS2026$SEXO)
table_6
##
## Femenino Masculino
## I 8 7
## II 17 8
## III 10 8
## IV 4 6
## V 3 2
(15i)
Gráfico de barras agrupadas: ESTRATO vs SEXO
barp6 <- barplot(table_6,
main = "Gráfico de barras ESTRATO vs SEXO",
xlab = "SEXO",
ylab = "Frecuencia",
col = rainbow(nrow(table_6)),
legend.text = rownames(table_6),
beside = TRUE,
ylim = c(0, max(table_6) + 3))
text(barp6, table_6 + 0.5, labels = table_6)

(16i)
Resumen estadístico numérico básico para la variable EDAD
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 17.0 18.0 18.0 18.7 19.0 22.0
(17i)
Estadísticas descriptivas de la EDAD por SEXO
by(DATOS2026$EDAD, DATOS2026$SEXO, summary)
## DATOS2026$SEXO: Femenino
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 17.00 18.00 18.50 18.74 19.00 22.00
## ------------------------------------------------------------
## DATOS2026$SEXO: Masculino
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 17.00 18.00 18.00 18.66 19.00 22.00
(19i)
Diagrama de caja simple (Boxplot) para EDAD
boxplot(DATOS2026$EDAD,
main = "Diagrama de Caja para EDAD",
ylab = "Años",
col = "lightgreen",
border = "darkgreen")

(20i)
Diagrama de caja comparativo: EDAD por SEXO
boxplot(EDAD ~ SEXO, data = DATOS2026,
main = "Distribución de EDAD según SEXO",
xlab = "SEXO",
ylab = "EDAD (años)",
col = c("pink", "lightblue"))

(21i)
Diagrama de caja comparativo: EDAD por ESTRATO
boxplot(EDAD ~ ESTRATO, data = DATOS2026,
main = "Distribución de EDAD según ESTRATO",
xlab = "ESTRATO",
ylab = "EDAD (años)",
col = terrain.colors(6))

(22i)
Diagrama de caja múltiple: EDAD vs ESTRATO por SEXO
(ggplot2)
ggplot(data = DATOS2026, mapping = aes(y = EDAD, x = as.factor(ESTRATO), fill = SEXO)) +
geom_boxplot() +
scale_y_continuous(name = "EDAD (años)") +
scale_x_discrete(name = "ESTRATO") +
labs(title = "Distribución de EDAD por ESTRATO y SEXO") +
theme_minimal()

(23i)
Resumen estadístico numérico básico para ESTATURA
summary(DATOS2026$ESTATURA)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 153.0 163.0 168.0 168.4 174.0 192.0
(24i)
Estadísticas descriptivas de ESTATURA por SEXO
by(DATOS2026$ESTATURA, DATOS2026$SEXO, summary)
## DATOS2026$SEXO: Femenino
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 153.0 160.0 164.0 164.1 168.0 177.0
## ------------------------------------------------------------
## DATOS2026$SEXO: Masculino
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 157.0 170.0 174.0 174.0 179.2 192.0
(25i)
Diagrama de caja simple para ESTATURA
boxplot(DATOS2026$ESTATURA,
main = "Diagrama de Caja para ESTATURA",
ylab = "Estatura (cm)",
col = "khaki",
border = "darkgoldenrod")

(26i)
Diagrama de caja comparativo: ESTATURA por SEXO
boxplot(ESTATURA ~ SEXO, data = DATOS2026,
main = "Distribución de ESTATURA según SEXO",
xlab = "SEXO",
ylab = "Estatura (cm)",
col = c("pink", "lightblue"))

(27i)
Diagrama de caja comparativo: ESTATURA por ESTRATO
boxplot(ESTATURA ~ ESTRATO, data = DATOS2026,
main = "Distribución de ESTATURA según ESTRATO",
xlab = "ESTRATO",
ylab = "Estatura (cm)",
col = heat.colors(6))

(28i)
Diagrama de caja múltiple: ESTATURA vs ESTRATO por SEXO
ggplot(data = DATOS2026, mapping = aes(y = ESTATURA, x = as.factor(ESTRATO), fill = SEXO)) +
geom_boxplot() +
scale_y_continuous(name = "ESTATURA (cm)") +
scale_x_discrete(name = "ESTRATO") +
labs(title = "Distribución de ESTATURA por ESTRATO y SEXO") +
theme_minimal()

(29i)
Construcción de Tabla de Frecuencias Agrupadas para EDAD
tabla_edad <- fdt(DATOS2026$EDAD)
tabla_edad
## Class limits f rf rf(%) cf cf(%)
## [16.83,17.504) 7 0.09 9.46 7 9.46
## [17.504,18.177) 32 0.43 43.24 39 52.70
## [18.177,18.851) 0 0.00 0.00 39 52.70
## [18.851,19.525) 21 0.28 28.38 60 81.08
## [19.525,20.199) 7 0.09 9.46 67 90.54
## [20.199,20.872) 0 0.00 0.00 67 90.54
## [20.872,21.546) 4 0.05 5.41 71 95.95
## [21.546,22.22) 3 0.04 4.05 74 100.00
(30i)
Histogramas de frecuencias absolutas y relativas para EDAD
par(mfrow = c(1, 2))
plot(tabla_edad, type = "fh", col = "skyblue", main = "Frecuencia Absoluta", xlab = "EDAD", ylab = "Frecuencia")
plot(tabla_edad, type = "rfh", col = "salmon", main = "Frecuencia Relativa (%)", xlab = "EDAD", ylab = "Porcentaje")

(31i)
Polígono de frecuencias absolutas para EDAD
plot(tabla_edad, type = "fp", col = "blue", main = "Polígono de Frecuencias Absolutas", xlab = "EDAD", ylab = "Frecuencia")

(32i)
Ojiva de frecuencias acumuladas para EDAD
plot(tabla_edad, type = "cfp", col = "darkgreen", main = "Ojiva de Frecuencias Acumuladas", xlab = "EDAD", ylab = "Frecuencia Acumulada")

(33i)
Tabla de frecuencias agrupadas de la EDAD procesada con
Sturges
n <- length(DATOS2026$EDAD)
k <- ceiling(1 + 3.322 * log10(n))
intervalos <- cut(DATOS2026$EDAD, breaks = k)
f_abs <- table(intervalos)
f_rel <- prop.table(f_abs)
fr_porcentual <- f_rel * 100
tabla_resumen <- data.frame(
Intervalo = names(f_abs),
Frec_Absoluta = as.numeric(f_abs),
Frec_Relativa = round(as.numeric(f_rel), 4),
Porcentaje = round(as.numeric(fr_porcentual), 2)
)
tabla_resumen
## Intervalo Frec_Absoluta Frec_Relativa Porcentaje
## 1 (17,17.6] 7 0.0946 9.46
## 2 (17.6,18.2] 32 0.4324 43.24
## 3 (18.2,18.9] 0 0.0000 0.00
## 4 (18.9,19.5] 21 0.2838 28.38
## 5 (19.5,20.1] 7 0.0946 9.46
## 6 (20.1,20.8] 0 0.0000 0.00
## 7 (20.8,21.4] 4 0.0541 5.41
## 8 (21.4,22] 3 0.0405 4.05
(34i)
Ojiva de frecuencias acumuladas porcentuales
p4 <- cumsum(fr_porcentual)
plot(p4, type = "b", col = "red", pch = 19, lwd = 2,
main = "Ojiva de Frecuencias Acumuladas Porcentuales",
xlab = "Clases de Edad", ylab = "Porcentaje Acumulado (%)")

(35i)
Gráfico de dispersión: EDAD vs ESTATURA
plot(DATOS2026$EDAD, DATOS2026$ESTATURA,
main = "Relación entre EDAD y ESTATURA",
xlab = "EDAD (años)", ylab = "ESTATURA (cm)",
col = "darkblue", pch = 19)
abline(lm(ESTATURA ~ EDAD, data = DATOS2026), col = "red", lwd = 2)
