1. CARGA DE DATOS Y LIBRERÍAS
library(readxl)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(gt)
datos <- read_excel("datos_deslizamientos.xlsx")
3. CONTEO
3.1 Definición de las categorías
meses <- c(
"Enero", "Febrero", "Marzo", "Abril",
"Mayo", "Junio", "Julio", "Agosto",
"Septiembre", "Octubre", "Noviembre", "Diciembre"
)
3.2 Conteo de datos
N <- length(variable)
3.3 Cálculo de frecuencias
ni <- sapply(
1:12,
function(i) sum(variable == i)
)
hi <- ni / sum(ni)
hi_porcentaje <- hi * 100
Ni <- cumsum(ni)
Hi_porcentaje <- cumsum(hi_porcentaje)
TDFMes <- data.frame(
Mes = factor(
meses,
levels = meses,
ordered = TRUE
),
ni = ni,
hi = hi,
hi_porcentaje = hi_porcentaje,
Ni = Ni,
Hi_porcentaje = Hi_porcentaje
)
TDFMes_total <- TDFMes %>%
add_row(
Mes = "TOTAL",
ni = sum(ni),
hi = 1,
hi_porcentaje = 100,
Ni = NA,
Hi_porcentaje = NA
)
4. TABLA DE FRECUENCIAS
4.1 Tabla de frecuencias
tabla_frecuencias <- TDFMes_total %>%
mutate(
hi = round(hi, 2),
hi_porcentaje = round(hi_porcentaje, 2),
Hi_porcentaje = round(Hi_porcentaje, 2)
)
tabla_frecuencias
## Mes ni hi hi_porcentaje Ni Hi_porcentaje
## 1 Enero 945 0.09 8.57 945 8.57
## 2 Febrero 797 0.07 7.22 1742 15.79
## 3 Marzo 985 0.09 8.93 2727 24.72
## 4 Abril 841 0.08 7.62 3568 32.34
## 5 Mayo 788 0.07 7.14 4356 39.48
## 6 Junio 974 0.09 8.83 5330 48.31
## 7 Julio 1243 0.11 11.27 6573 59.58
## 8 Agosto 1175 0.11 10.65 7748 70.23
## 9 Septiembre 896 0.08 8.12 8644 78.35
## 10 Octubre 761 0.07 6.90 9405 85.24
## 11 Noviembre 668 0.06 6.05 10073 91.30
## 12 Diciembre 960 0.09 8.70 11033 100.00
## 13 TOTAL 11033 1.00 100.00 NA NA
4.2 Presentación de la tabla
tabla_frecuencias %>%
gt() %>%
tab_header(
title = md("**Tabla Nro. 1**"),
subtitle = md("Distribución mensual de la frecuencia de deslizamientos a nivel mundial")
) %>%
cols_label(
Mes = "Mes",
ni = "Frecuencia absoluta (ni)",
hi = "Frecuencia relativa decimal",
hi_porcentaje = "Frecuencia relativa (%)",
Ni = "Frecuencia acumulada (Ni)",
Hi_porcentaje = "Frecuencia relativa acumulada (%)"
) %>%
tab_source_note(
source_note = md("Elaborado por: Grupo 1 – Carrera de Geología")
) %>%
tab_style(
style = cell_text(weight = "bold"),
locations = cells_body(rows = Mes == "TOTAL")
)
| Tabla Nro. 1 |
| Distribución mensual de la frecuencia de deslizamientos a nivel mundial |
| Mes |
Frecuencia absoluta (ni) |
Frecuencia relativa decimal |
Frecuencia relativa (%) |
Frecuencia acumulada (Ni) |
Frecuencia relativa acumulada (%) |
| Enero |
945 |
0.09 |
8.57 |
945 |
8.57 |
| Febrero |
797 |
0.07 |
7.22 |
1742 |
15.79 |
| Marzo |
985 |
0.09 |
8.93 |
2727 |
24.72 |
| Abril |
841 |
0.08 |
7.62 |
3568 |
32.34 |
| Mayo |
788 |
0.07 |
7.14 |
4356 |
39.48 |
| Junio |
974 |
0.09 |
8.83 |
5330 |
48.31 |
| Julio |
1243 |
0.11 |
11.27 |
6573 |
59.58 |
| Agosto |
1175 |
0.11 |
10.65 |
7748 |
70.23 |
| Septiembre |
896 |
0.08 |
8.12 |
8644 |
78.35 |
| Octubre |
761 |
0.07 |
6.90 |
9405 |
85.24 |
| Noviembre |
668 |
0.06 |
6.05 |
10073 |
91.30 |
| Diciembre |
960 |
0.09 |
8.70 |
11033 |
100.00 |
| TOTAL |
11033 |
1.00 |
100.00 |
NA |
NA |
| Elaborado por: Grupo 1 – Carrera de Geología |
tabla_graficos <- TDFMes
5. GRÁFICAS
5.1 Diagramas de barras
Diagrama de barras por defecto de la Frecuencia absoluta
(ni)
par(mar = c(12,5,4,2))
max_ni <- max(ni)
pos_x <- barplot(
ni,
col = "#EEDFCC",
border = "black",
space = 0.3,
ylim = c(0, max_ni),
yaxt = "n",
xaxt = "n",
main = "Gráfica 1: Diagrama de barras por defecto de \nla Frecuencia absoluta (ni)\n",
xlab = "Mes",
ylab = "Frecuencia absoluta (ni)"
)
ticks_y <- round(seq(0,max_ni,length.out=5),0)
axis(
side=2,
at=ticks_y,
labels=ticks_y,
las=1
)
axis(
side=1,
at=pos_x,
labels=meses,
las=2,
cex.axis=0.85
)
text(
pos_x,
ni,
labels=ni,
pos=3,
font=2,
cex=.8
)

5.2 Diagrama de barras extendido de la Frecuencia absoluta
(ni)
par(mar = c(12,5,4,2))
N_total <- sum(ni)
pos_x <- barplot(
ni,
col="#EEDFCC",
border="black",
space=.3,
ylim=c(0,N_total),
yaxt="n",
xaxt="n",
main="Gráfica 2: Diagrama de barras extendido de \nla Frecuencia absoluta (ni)",
xlab="Mes",
ylab="Frecuencia absoluta (ni)"
)
ticks_global <- c(
0,
round(N_total*.2),
round(N_total*.4),
round(N_total*.6),
round(N_total*.8),
N_total
)
axis(
side=2,
at=ticks_global,
labels=ticks_global,
las=1
)
axis(
side=1,
at=pos_x,
labels=meses,
las=2,
cex.axis=.85
)
abline(
h=N_total,
col="red",
lty=2,
lwd=2
)
text(
pos_x,
ni,
labels=ni,
pos=3,
font=2,
cex=.8
)

5.3 Diagrama de barras por defecto de la Frecuencia relativa
(hi)
par(mar = c(12,5,4,2))
max_hi <- max(hi_porcentaje) * 1.12
pos_x <- barplot(
hi_porcentaje,
col="#BFD7EA",
border="black",
space=.3,
ylim=c(0,max_hi),
yaxt="n",
xaxt="n",
main="Gráfica 3: Diagrama de barras por defecto de \nla Frecuencia relativa (hi)",
xlab="Mes",
ylab="Frecuencia relativa (%)"
)
ticks_hi <- round(seq(0,max_hi,length.out=5),2)
axis(
side=2,
at=ticks_hi,
labels=ticks_hi,
las=1
)
axis(
side=1,
at=pos_x,
labels=meses,
las=2,
cex.axis=.85
)
text(
pos_x,
hi_porcentaje,
labels=round(hi_porcentaje,2),
pos=3,
font=2,
cex=.8
)

5.4 Diagrama de barras extendido de la Frecuencia relativa
(hi)
par(mar = c(12,5,4,2))
pos_x <- barplot(
hi_porcentaje,
col="#BFD7EA",
border="black",
space=.3,
ylim=c(0,100),
yaxt="n",
xaxt="n",
main="Gráfica 4: Diagrama de barras extendido de \nla Frecuencia relativa (hi)",
xlab="Mes",
ylab="Frecuencia relativa (%)"
)
axis(
side=2,
at=seq(0,100,20),
labels=seq(0,100,20),
las=1
)
axis(
side=1,
at=pos_x,
labels=meses,
las=2,
cex.axis=.85
)
abline(
h=100,
col="red",
lty=2,
lwd=2
)
text(
pos_x,
hi_porcentaje,
labels=round(hi_porcentaje,2),
pos=3,
font=2,
cex=.8
)

5.5 Diagrama circular
par(mar = c(5,4,4,8))
par(xpd = TRUE)
colores <- c(
"#66c2a5", "#fc8d62", "#8da0cb", "#e78ac3",
"#a6d854", "#ffd92f", "#e5c494", "#b3b3b3",
"#1b9e77", "#d95f02", "#7570b3", "#e7298a"
)
pie(
tabla_graficos$hi_porcentaje,
labels = paste0(round(tabla_graficos$hi_porcentaje,2)," %"),
radius = 0.9,
col = colores,
main = "Gráfica 5: Distribución porcentual de los deslizamientos por mes\n(diagrama circular)"
)
legend(
x = 1.30,
y = 0,
legend = as.character(tabla_graficos$Mes),
fill = colores,
cex = 0.95,
bty = "n"
)

par(xpd = FALSE)
6. INDICADORES
6.1 Indicadores de posición
# Moda
indice_moda <- which.max(TDFMes$ni)
moda_mes <- TDFMes$Mes[indice_moda]
moda_ni <- TDFMes$ni[indice_moda]
moda_hi <- round(TDFMes$hi_porcentaje[indice_moda],2)
# Mediana ordinal
mediana_mes <- meses[which.min(abs(TDFMes$Hi_porcentaje - 50))]
6.2 Tabla resumen de indicadores
tabla_indicadores <- data.frame(
Indicador = c(
"Tamaño de la muestra",
"Número de categorías",
"Moda",
"Frecuencia absoluta de la moda",
"Frecuencia relativa de la moda (%)",
"Mediana ordinal"
),
Resultado = c(
N,
length(meses),
moda_mes,
moda_ni,
moda_hi,
mediana_mes
)
)
tabla_indicadores %>%
gt() %>%
tab_header(
title = md("**Tabla Nro. 2**"),
subtitle = md("Indicadores estadísticos de la variable Mes")
) %>%
cols_label(
Indicador = "Indicador estadístico",
Resultado = "Resultado"
) %>%
tab_source_note(
source_note = md("Elaborado por: Grupo 1 – Carrera de Geología")
)
| Tabla Nro. 2 |
| Indicadores estadísticos de la variable Mes |
| Indicador estadístico |
Resultado |
| Tamaño de la muestra |
11033 |
| Número de categorías |
12 |
| Moda |
7 |
| Frecuencia absoluta de la moda |
1243 |
| Frecuencia relativa de la moda (%) |
11.27 |
| Mediana ordinal |
Junio |
| Elaborado por: Grupo 1 – Carrera de Geología |
7. CONCLUSIÓN
El análisis de la variable Mes, correspondiente a
una variable cualitativa ordinal, permitió identificar la distribución
temporal de los deslizamientos registrados a nivel mundial. Los
indicadores de posición muestran que el mes con mayor frecuencia de
ocurrencia corresponde a Julio, con
1243 eventos, equivalentes al 11.27 %
del total de registros analizados. Por su parte, la mediana ordinal se
ubicó en el mes de Junio, indicando que aproximadamente
el 50 % de los deslizamientos ocurrió antes o durante este mes y el
restante después de él. Estos resultados evidencian la existencia de una
concentración temporal de los eventos, información que resulta útil para
identificar periodos de mayor susceptibilidad y fortalecer la
planificación de medidas de prevención y gestión del riesgo.