1. Carga y preparación de los datos

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)

# Lectura del archivo Excel (previamente cargado al proyecto)
datos_nuevoartes <- read_excel("datos_nuevoartes.xlsx")

# Conversión de la variable fecha
event_date <- as.Date(datos_nuevoartes$event_date)

# Eliminación de valores perdidos
event_date <- event_date[!is.na(event_date)]

2. Identificación de los meses del año

# Extracción del mes en formato numérico

mes_num <- as.numeric(format(event_date, "%m"))

# Nombres de los meses

meses <- c(
"Enero", "Febrero", "Marzo", "Abril",
"Mayo", "Junio", "Julio", "Agosto",
"Septiembre", "Octubre", "Noviembre", "Diciembre"
)

3. Tabla de distribución de frecuencias

# Frecuencia absoluta

ni_m <- sapply(1:12, function(i) sum(mes_num == i))

# Frecuencia relativa (%)

hi_m <- round((ni_m / sum(ni_m)) * 100, 2)

## Construcción de la tabla

tabla_meses <- data.frame(
Mes = meses,
ni = ni_m,
hi = hi_m
)

# Fila de total

tabla_meses <- tabla_meses %>%
add_row(
Mes = "Total",
ni = sum(ni_m),
hi = 100
)

3.1. Presentación de la tabla

tabla_meses %>%
gt() %>%
tab_header(
title = md("**Tabla Nro. 1**"),
subtitle = md("Distribución de frecuencias simples de los eventos según el mes")
) %>%
tab_source_note(
source_note = md("Elaborado por: Grupo 2 – Carrera de Geología")
) %>%
cols_label(
Mes = "Mes",
ni = "Frecuencia absoluta (ni)",
hi = "Frecuencia relativa (%)"
) %>%
tab_style(
style = cell_text(weight = "bold"),
locations = cells_body(rows = Mes == "Total")
)
Tabla Nro. 1
Distribución de frecuencias simples de los eventos según el mes
Mes Frecuencia absoluta (ni) Frecuencia relativa (%)
Enero 945 8.57
Febrero 797 7.22
Marzo 985 8.93
Abril 841 7.62
Mayo 788 7.14
Junio 974 8.83
Julio 1243 11.27
Agosto 1175 10.65
Septiembre 896 8.12
Octubre 761 6.90
Noviembre 668 6.05
Diciembre 960 8.70
Total 11033 100.00
Elaborado por: Grupo 2 – Carrera de Geología

4. Diagrama de barras

4.1. Frecuencia absoluta

barplot(
ni_m,
names.arg = meses,
las = 2,
col = "gray",
main = "Distribución mensual de eventos (frecuencia absoluta)",
ylab = "Frecuencia absoluta (ni)",
xlab = "Mes"
)

4.2. Frecuencia Relativa

barplot(
hi_m,
names.arg = meses,
las = 2,
col = "lightblue",
main = "Distribución mensual de eventos (frecuencia relativa)",
ylab = "Frecuencia relativa (%)",
xlab = "Mes"
)

5. Diagrama Circular

colores <- c(
"#66c2a5", "#fc8d62", "#8da0cb", "#e78ac3",
"#a6d854", "#ffd92f", "#e5c494", "#b3b3b3",
"#1b9e77", "#d95f02", "#7570b3", "#e7298a"
)

pie(
hi_m,
col = colores,
labels = paste0(hi_m, " %"),
main = "Distribución porcentual de eventos por mes"
)

legend(
"topright",
legend = meses,
fill = colores,
cex = 0.7,
bty = "n"
)

6. Indicadores Estadísticos

6.1. Moda

moda_mes <- meses[which.max(ni_m)]
cat("La moda de la variable Mes es:", moda_mes)
## La moda de la variable Mes es: Julio