CARGA DE DATOS Y LIBRERÍAS

datos <- read.csv("C:/Users/Grace/Favorites/Restudio (Estadistica)/Sedimentos Marinos.csv", 
                  header = TRUE, 
                  sep = ";"
                  , dec = ".")
# Extraer la variable
month_coll <- as.numeric(datos$MONTH_COLL)
# Mantener solo meses válidos
month_clean <- month_coll[
  month_coll >= 1 & month_coll <= 12 & month_coll != -9999
]


# Tamaño de muestra
n <- length(month_clean)
cat("Tamaño de la muestra (n): ", n, "\n")
## Tamaño de la muestra (n):  11742

CARGA DE LIBRERÍAS

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)
library(moments)
## 
## Adjuntando el paquete: 'moments'
## The following objects are masked from 'package:e1071':
## 
##     kurtosis, moment, skewness
library(kableExtra)
## 
## Adjuntando el paquete: 'kableExtra'
## The following object is masked from 'package:dplyr':
## 
##     group_rows
library(gt)

TABLA DE DISTRIBUCIÓN DE FRECUENCIA

TABLA DE DISTRIBUCIÓN DE FRECUENCIA

# Frecuencia absoluta (ni)
ni <- table(month_clean)

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

# Frecuencia relativa acumulada (Hi)
Hi <- cumsum(hi)

# Tabla principal 
tabla_final <- data.frame(
  Mes = names(ni), 
  ni = as.numeric(ni), 
  hi = as.numeric(hi)
) 

# Fila TOTAL 
fila_total <- data.frame(
  Mes = "TOTAL",
  ni = sum(tabla_final$ni),
  hi = sum(tabla_final$hi)
) 

fila_total$hi <- 100
#Tabla Total
tabla_Total <- rbind(tabla_final, fila_total)

tabla_Total
##      Mes    ni     hi
## 1      1    33   0.28
## 2      2   288   2.46
## 3      3  1559  13.31
## 4      4   806   6.88
## 5      5  1195  10.20
## 6      6  2096  17.89
## 7      7  1695  14.47
## 8      8   595   5.08
## 9      9  1907  16.28
## 10    10  1089   9.30
## 11    11   410   3.50
## 12    12    42   0.36
## 13 TOTAL 11715 100.00

TABLA FINAL CON ESTILO

tablaMes <- tabla_Total %>%
  gt() %>%
  tab_header(
    title = md("**Tabla N° 1**"),
    subtitle = md("Distribución de frecuencias de la Variable Month_coll")
  ) %>%
  tab_source_note(
    source_note = md("Grupo 3")
  ) %>%
  tab_options(
    table.border.top.color = "black",
    table.border.bottom.color = "black",
    heading.border.bottom.color = "black",
    heading.border.bottom.width = px(2),
    column_labels.border.top.color = "black",
    column_labels.border.bottom.color = "black",
    column_labels.border.bottom.width = px(2),
    table_body.hlines.color = "gray",
    table_body.border.bottom.color = "black",
    row.striping.include_table_body = TRUE
  )

tablaMes
Tabla N° 1
Distribución de frecuencias de la Variable Month_coll
Mes ni hi
1 33 0.28
2 288 2.46
3 1559 13.31
4 806 6.88
5 1195 10.20
6 2096 17.89
7 1695 14.47
8 595 5.08
9 1907 16.28
10 1089 9.30
11 410 3.50
12 42 0.36
TOTAL 11715 100.00
Grupo 3

GRÁFICAS DE DISTRIBUCIÓN DE FRECUENCIA

barplot(
  tabla_Total$ni[1:(nrow(tabla_Total)-1)],
  main = "Gráfica Nº1:  Distribución de los meses de recolección Local",
  cex.main = 0.8,
  col = "gray",
  xlab = "Mes",
  ylab = "Cantidad (ni)",
  names.arg = tabla_Total$Mes[1:(nrow(tabla_Total)-1)]
)

barplot(
  tabla_Total$ni[1:(nrow(tabla_Total)-1)],
  main = "Gráfica Nº2: Distribución de los meses de recolección Global",
  cex.main = 0.8,
  xlab = "Mes",
  ylab = "Cantidad (ni)",
  col = "gray",
  names.arg = tabla_Total$Mes[1:(nrow(tabla_Total)-1)],
  ylim = c(0, 12000)
)

#Hi local y global
hi_local <- as.numeric(tabla_Total$hi[1:(nrow(tabla_Total)-1)])
barplot(
  hi_local,
  main = "Gráfica Nº3: Distribución de porcentaje de los meses de recolección Local",
  cex.main = 0.8,
  xlab = "Mes",
  ylab = "Porcentaje (%)",
  col = "gray",
  names.arg = tabla_Total$Mes[1:(nrow(tabla_Total)-1)]
)

hi_global <- as.numeric(tabla_Total$hi[1:(nrow(tabla_Total)-1)])
barplot(
  hi_global,
  main = "Gráfica Nº4: Distribución de porcentaje de los meses de recolección Global",
  cex.main = 0.8,
  xlab = "Mes",
  ylab = "Porcentaje (%)",
  col = "gray",
  names.arg = tabla_Total$Mes[1:(nrow(tabla_Total)-1)],
  ylim = c(0, 100)
)

#Diagrama Circular
hi_mes <- as.numeric(tabla_Total$hi[1:(nrow(tabla_Total)-1)])
meses <- tabla_Total$Mes[1:(nrow(tabla_Total)-1)]

Colores <- colorRampPalette(c("red", "green"))(length(hi_mes))
etiquetas <- paste0(hi_mes, "%")

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

pie(
  hi_mes,
  radius = 0.8,
  col = Colores,
  labels = etiquetas,
  main = "Gráfica Nº5: Diagrama circular Month_coll",
  cex.main = 0.8
)

plot.new()
legend(
  "center",
  title = "Mes",
  legend = meses,
  fill = Colores,
  cex = 0.7,
  bg = "white",
  box.lwd = 0.7
)

Indicadores estadísticos

# Tabla de frecuencias
tabla_mes <- table(month_clean)

# Moda
moda_mes <- names(tabla_mes)[which.max(as.numeric(tabla_mes))]

moda_mes
## [1] "6"

Tabla de indicadores estadísticos

Variable<-c("Mes")
TablaIndicadores<-data.frame(Variable,moda_mes)
colnames(TablaIndicadores)<-c("Variable","Moda")

kable(TablaIndicadores, format = "markdown", caption = "Tabla N°2. TU TÍTULO AQUÍ")
Tabla N°2. TU TÍTULO AQUÍ
Variable Moda
Mes 6

Conclusiones

La variable MONTH_COLL (mes de recolección de las muestras) presenta valores que fluctúan en 6, con una distribución relativamente uniforme a lo largo del año. La moda se encuentra en el mes con mayor frecuencia de muestreo (generalmente uno de los meses centrales del año, como julio o agosto, según los datos), lo que refleja una actividad de recolección continua sin marcada estacionalidad.

Este comportamiento resulta beneficioso para el análisis de sedimentos marinos, ya que la ausencia de sesgo estacional fuerte indica que las muestras representan condiciones oceanográficas a lo largo de todo el ciclo anual, facilitando la evaluación de procesos sedimentarios, contaminación costera y dinámica marina sin influencia dominante de una estación específica.