CARGA DE DATOS Y LIBRERÍAS

# Cargar librerías
library(moments)

# Cargar datos
datos <- read.csv("~/UNI/estadistica/2026/dataset_geologico_limpio_80.csv")
cat("Dimensiones:", nrow(datos), "observaciones:", ncol(datos), "variables\n\n")
## Dimensiones: 27784 observaciones: 58 variables
# Extraer variable
mesR_raw <- datos$MONTH_COLL
print("Primeros valores de MONTH_COLL:")
## [1] "Primeros valores de MONTH_COLL:"
print(head(mesR_raw))
## [1] "DICIEMBRE" "DICIEMBRE" "DICIEMBRE" "DICIEMBRE" "DICIEMBRE" "DICIEMBRE"
mesR <- na.omit(mesR_raw)

# Orden correcto de meses
orden_meses <- c("ENERO","FEBRERO","MARZO","ABRIL","MAYO","JUNIO",
                 "JULIO","AGOSTO","SEPTIEMBRE","OCTUBRE","NOVIEMBRE","DICIEMBRE")

mesR <- toupper(trimws(as.character(mesR)))
mesR <- factor(mesR, levels = orden_meses, ordered = TRUE)

summary(mesR)
##      ENERO    FEBRERO      MARZO      ABRIL       MAYO      JUNIO      JULIO 
##        163        732       1878       1479       3437       4293       4213 
##     AGOSTO SEPTIEMBRE    OCTUBRE  NOVIEMBRE  DICIEMBRE 
##       3417       3332       2171       1309        315
n <- length(mesR)
print(paste("Número de observaciones válidas (n):", n))
## [1] "Número de observaciones válidas (n): 26739"
# CARGA DE LIBRERÍAS
library(gt)
library(dplyr)
## 
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(knitr)
library(e1071)
## 
## Adjuntando el paquete: 'e1071'
## The following objects are masked from 'package:moments':
## 
##     kurtosis, moment, skewness
library(moments)

TABLA DE DISTRIBUCIÓN DE FRECUENCIA

Tabla de Distribucion de Frecuencia Simple

# Numero de datos
n <- length(mesR)

# Frecuencia absoluta
ni <- table(mesR)

# Frecuencia relativa
hi <- prop.table(ni) * 100

# Frecuencias acumuladas
Ni_asc <- cumsum(ni)
Hi_asc <- cumsum(hi)
Ni_desc <- rev(cumsum(rev(ni)))
Hi_desc <- rev(cumsum(rev(hi)))

# Crear tabla
TablaFrecuencias_MONTH_COLL <- data.frame(
  MesR = names(ni),
  ni = as.numeric(ni),
  hi = round(as.numeric(hi),2),
  Ni_asc = as.numeric(Ni_asc),
  Hi_asc = round(as.numeric(Hi_asc),2),
  Ni_desc = as.numeric(Ni_desc),
  Hi_desc = round(as.numeric(Hi_desc),2)
)

# Agregar fila TOTAL
TablaFrecuencias_MONTH_COLL[nrow(TablaFrecuencias_MONTH_COLL)+1,] <-
  c("TOTAL", sum(ni),100,NA,NA,NA,NA)

TablaFrecuencias_MONTH_COLL
##          MesR    ni    hi Ni_asc Hi_asc Ni_desc Hi_desc
## 1       ENERO   163  0.61    163   0.61   26739     100
## 2     FEBRERO   732  2.74    895   3.35   26576   99.39
## 3       MARZO  1878  7.02   2773  10.37   25844   96.65
## 4       ABRIL  1479  5.53   4252   15.9   23966   89.63
## 5        MAYO  3437 12.85   7689  28.76   22487    84.1
## 6       JUNIO  4293 16.06  11982  44.81   19050   71.24
## 7       JULIO  4213 15.76  16195  60.57   14757   55.19
## 8      AGOSTO  3417 12.78  19612  73.35   10544   39.43
## 9  SEPTIEMBRE  3332 12.46  22944  85.81    7127   26.65
## 10    OCTUBRE  2171  8.12  25115  93.93    3795   14.19
## 11  NOVIEMBRE  1309   4.9  26424  98.82    1624    6.07
## 12  DICIEMBRE   315  1.18  26739    100     315    1.18
## 13      TOTAL 26739   100   <NA>   <NA>    <NA>    <NA>

# Tabla mejorada
TablaFrecuencias_MONTH_COLL %>%
  gt() %>%
  tab_header(
    title = md("**Tabla Nº1**"),
    subtitle = md("Distribución de frecuencias de la variable MONTH_COLL en depósitos marinos")
  ) %>%
  tab_source_note(
    source_note = md("Autor: Grupo 3")
  ) %>%
  cols_label(
    MesR = "Mes",
    ni = "Frecuencia (ni)",
    hi = "Porcentaje (%)",
    Ni_asc = "Ni Asc",
    Hi_asc = "Hi Asc (%)",
    Ni_desc = "Ni Desc",
    Hi_desc = "Hi Desc (%)"
  )
Tabla Nº1
Distribución de frecuencias de la variable MONTH_COLL en depósitos marinos
Mes Frecuencia (ni) Porcentaje (%) Ni Asc Hi Asc (%) Ni Desc Hi Desc (%)
ENERO 163 0.61 163 0.61 26739 100
FEBRERO 732 2.74 895 3.35 26576 99.39
MARZO 1878 7.02 2773 10.37 25844 96.65
ABRIL 1479 5.53 4252 15.9 23966 89.63
MAYO 3437 12.85 7689 28.76 22487 84.1
JUNIO 4293 16.06 11982 44.81 19050 71.24
JULIO 4213 15.76 16195 60.57 14757 55.19
AGOSTO 3417 12.78 19612 73.35 10544 39.43
SEPTIEMBRE 3332 12.46 22944 85.81 7127 26.65
OCTUBRE 2171 8.12 25115 93.93 3795 14.19
NOVIEMBRE 1309 4.9 26424 98.82 1624 6.07
DICIEMBRE 315 1.18 26739 100 315 1.18
TOTAL 26739 100 NA NA NA NA
Autor: Grupo 3

GRÁFICAS DE DISTRIBUCIÓN DE FRECUENCIA

par(mfrow = c(1,1))
par(mar=c(9,4,4,2))

# Quitar TOTAL
tabla_graf <- TablaFrecuencias_MONTH_COLL[TablaFrecuencias_MONTH_COLL$MesR!="TOTAL",]

tabla_graf$ni <- as.numeric(tabla_graf$ni)
tabla_graf$hi <- as.numeric(tabla_graf$hi)

# DIAGRAMA DE BARRAS LOCAL - FRECUENCIAS ABSOLUTAS
barplot(tabla_graf$ni,
        names.arg = tabla_graf$MesR,
        las = 2,
        col = "lightgreen",
        main = "Grafica 1: Distribución de Mes de Recolección",
        xlab = "Mes",
        ylab = "Cantidad",
        ylim = c(0,max(tabla_graf$ni)*1.4))

abline(h=0,lwd=1)


par(mfrow = c(1,1))
par(mar=c(9,4,4,2))

# DIAGRAMA DE BARRAS GLOBAL - FRECUENCIAS ABSOLUTAS
barplot(tabla_graf$ni,
        names.arg = tabla_graf$MesR,
        las = 2,
        col = "skyblue",
        main = "Grafica 2: Distribución de Cantidad de Mes de Recolección",
        xlab = "Mes",
        ylab = "Cantidad",
        ylim = c(0,max(tabla_graf$ni)*1.4))

abline(h=0,lwd=1)


par(mfrow = c(1,1))
par(mar=c(9,4,4,2))

# DIAGRAMA DE BARRAS LOCAL - FRECUENCIAS RELATIVAS
barplot(tabla_graf$hi,
        names.arg = tabla_graf$MesR,
        las = 2,
        col = "orchid",
        main = "Grafica 3: Distribución porcentual de Mes de Recolección",
        xlab = "Mes",
        ylab = "Porcentaje (%)",
        ylim = c(0,max(tabla_graf$hi)*1.4))

abline(h=0,lwd=1)


par(mfrow = c(1,1))
par(mar=c(9,4,4,2))

# DIAGRAMA DE BARRAS GLOBAL - FRECUENCIAS RELATIVAS
barplot(tabla_graf$hi,
        names.arg = tabla_graf$MesR,
        las = 2,
        col = "mediumpurple",
        main = "Grafica 4: Distribución porcentual de Mes de Recolección",
        xlab = "Mes",
        ylab = "Porcentaje (%)",
        ylim = c(0,max(tabla_graf$hi)*1.4))

abline(h=0,lwd=1)


# DIAGRAMA CIRCULAR
par(mfrow = c(1,2))
par(mar=c(2,2,4,2))

colores <- rainbow(length(tabla_graf$hi))

pie(tabla_graf$hi,
    labels = paste0(round(tabla_graf$hi,2), "%"),
    radius = 0.8,
    col = colores,
    main = "Grafica 5: Distribución porcentual de Mes de Recolección",
    cex.main = 0.7,
    cex = 0.7)

plot.new()

legend("center",
       legend = tabla_graf$MesR,
       fill = colores,
       title = "Mes",
       cex = 0.7,
       bg = "white",
       box.lwd = 0.7)


INDICADORES ESTADÍSTICOS

# Moda
moda <- tabla_graf$MesR[which.max(tabla_graf$ni)]

TablaIndicadores <- data.frame(
  Indicador="Moda",
  Categoria=moda
)

TablaIndicadores
##   Indicador Categoria
## 1      Moda     JUNIO

TablaIndicadores %>%
  gt() %>%
  tab_header(
    title = md("**Tabla Nº2**"),
    subtitle = md("Indicador de posición de la variable MONTH_COLL")
  ) %>%
  tab_source_note(
    source_note = md("Autor: Grupo 3")
  )
Tabla Nº2
Indicador de posición de la variable MONTH_COLL
Indicador Categoria
Moda JUNIO
Autor: Grupo 3

CONCLUSIONES

La variable MONTH_COLL presenta como mes más frecuente de recolección el mes de Junio. Esto permite identificar el periodo en el cual se realizaron más campañas de muestreo de depósitos marinos, lo cual puede relacionarse con condiciones oceanográficas favorables o con la planificación de las expediciones científicas.