1. CARGA DE DATOS Y LIBRERÍAS

1.1 CARGA DE LIBRERÍAS

# Elaboración de tablas con formato profesional
library(gt)

# Transformación de datos
library(tidyr)

# Elaboración de gráficos
library(ggplot2)

# Presentación de tablas
library(knitr)

# Manipulación de datos
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

1.2 CARGAR DATOS

datos <- read.csv(
  "C:/Users/Grace/Downloads/dataset_geologico_limpio_80.csv",
  header = TRUE,
  sep = ",",
  dec = ".",
  stringsAsFactors = FALSE
)

1.3 EXTRAER LA VARIABLE DE ESTUDIO

# Seleccionar la variable YEAR_COLL (Año de recolección)
year <- as.numeric(datos$YEAR_COLL)

# Redondear los valores del año
year <- round(year)

# Eliminar valores faltantes (NA)
year <- na.omit(year)

# Eliminar registros con años superiores al año actual
year <- year[year <= 2024]

1.4 VERIFICACIÓN DE LOS DATOS

cat("========================================\n")
## ========================================
cat("INFORMACIÓN GENERAL DE LA VARIABLE\n")
## INFORMACIÓN GENERAL DE LA VARIABLE
cat("========================================\n")
## ========================================
cat("Número de observaciones:", length(year), "\n")
## Número de observaciones: 27438
cat("Año mínimo:", min(year), "\n")
## Año mínimo: 1945
cat("Año máximo:", max(year), "\n")
## Año máximo: 2024

2. ANÁLISIS DESCRIPTIVO DE LA DISTRIBUCIÓN

La variable YEAR_COLL corresponde al año de recolección de las muestras de sedimentos marinos. Debido a que se trata de una variable cuantitativa discreta, inicialmente se analiza su distribución de frecuencias con el propósito de identificar el comportamiento general de los datos. Para facilitar la interpretación de la información, los años fueron agrupados en intervalos de diez años, obteniendo nueve clases de análisis. La distribución obtenida permitirá identificar los diferentes comportamientos presentes en la variable y servirá como base para la construcción de los modelos probabilísticos.

2.1 CONSTRUCCIÓN DE INTERVALOS DE CLASE

# Se establecen intervalos de amplitud de 10 años para representar
# el comportamiento de la variable YEAR_COLL.

intervalos <- c(

1940,
1950,
1960,
1970,
1980,
1990,
2000,
2010,
2020,
2025

)

# Etiquetas correspondientes a cada intervalo

etiquetas <- c(

"1940-1949",
"1950-1959",
"1960-1969",
"1970-1979",
"1980-1989",
"1990-1999",
"2000-2009",
"2010-2019",
"2020-2024"

)

# Clasificación de los registros

clasificacion <- cut(

year,

breaks = intervalos,

right = FALSE,

labels = etiquetas

)

2.2 TABLA DE DISTRIBUCIÓN DE FRECUENCIAS

# Calcular frecuencias absolutas

ni <- table(clasificacion)

# Construcción de la tabla

TDF_general <- data.frame(

Intervalo = names(ni),

ni = as.numeric(ni)

)

# Calcular frecuencias relativas y acumuladas

TDF_general <- TDF_general %>%

arrange(Intervalo) %>%

mutate(

hi = (ni/sum(ni))*100,

Ni_asc = cumsum(ni),

Ni_dsc = rev(cumsum(rev(ni))),

Hi_asc = cumsum(hi),

Hi_dsc = rev(cumsum(rev(hi)))

)
tabla_distribucion <- TDF_general %>%

rbind(

data.frame(

Intervalo = "TOTAL",

ni = sum(TDF_general$ni),

hi = 100,

Ni_asc = NA,

Ni_dsc = NA,

Hi_asc = NA,

Hi_dsc = NA

)

) %>%

gt() %>%

tab_header(

title = md("**Tabla N.° 1**"),

subtitle = md("Distribución de frecuencias del año de recolección")

) %>%

fmt_number(

columns = c(hi,Hi_asc,Hi_dsc),

decimals = 2

) %>%

sub_missing(

columns = everything(),

missing_text = ""

) %>%

cols_label(

Intervalo = "Intervalo",

ni = "Frecuencia",

hi = "Frecuencia relativa (%)",

Ni_asc = "Ni (↑)",

Ni_dsc = "Ni (↓)",

Hi_asc = "Hi (%) (↑)",

Hi_dsc = "Hi (%) (↓)"

) %>%

tab_style(

style = cell_text(weight = "bold"),

locations = cells_body(rows = Intervalo=="TOTAL")

) %>%

tab_source_note(

source_note = md("Elaborado por: Grupo 2 - Ingeniería en Minas")

)

tabla_distribucion
Tabla N.° 1
Distribución de frecuencias del año de recolección
Intervalo Frecuencia Frecuencia relativa (%) Ni (↑) Ni (↓) Hi (%) (↑) Hi (%) (↓)
1940-1949 2 0.01 2 27438 0.01 100.00
1950-1959 200 0.73 202 27436 0.74 99.99
1960-1969 3627 13.22 3829 27236 13.96 99.26
1970-1979 655 2.39 4484 23609 16.34 86.04
1980-1989 5733 20.89 10217 22954 37.24 83.66
1990-1999 9864 35.95 20081 17221 73.19 62.76
2000-2009 4807 17.52 24888 7357 90.71 26.81
2010-2019 2533 9.23 27421 2550 99.94 9.29
2020-2024 17 0.06 27438 17 100.00 0.06
TOTAL 27438 100.00



Elaborado por: Grupo 2 - Ingeniería en Minas

2.3 GRÁFICA DE DISTRIBUCIÓN DE FRECUENCIAS

# Ajustar los márgenes de la gráfica para mejorar la presentación.
# mar = c(abajo, izquierda, arriba, derecha)

par(
  mar = c(12,6,5,2),
  mgp = c(5,1,0)
)

# Construcción de la gráfica de distribución de frecuencias

barplot(

  height = TDF_general$ni,

  # Color de las barras
  col = "gray75",

  # Color del borde
  border = "gray30",

  # Separación entre barras
  space = 0,

  # Etiquetas de los intervalos
  names.arg = TDF_general$Intervalo,

  # Rotación de las etiquetas
  las = 2,

  # Tamaño de las etiquetas
  cex.names = 0.90,

  # Título de la gráfica
  main = "Gráfica N.° 1\nDistribución de frecuencias del año de recolección",

  # Etiqueta del eje X
  xlab = "Intervalos del año de recolección",

  # Etiqueta del eje Y
  ylab = "Frecuencia absoluta"

)

# Restaurar los márgenes predeterminados

par(mar = c(5.1,4.1,4.1,2.1))

Interpretación. La distribución de frecuencias de la variable YEAR_COLL presenta un comportamiento no uniforme. Se observa un incremento progresivo en el número de registros desde los primeros intervalos hasta alcanzar su máxima frecuencia durante el período 1990–1999. Posteriormente, la frecuencia disminuye de forma gradual hacia los años más recientes. Este comportamiento evidencia la existencia de dos tendencias diferenciadas dentro de la distribución, lo que justifica el desarrollo de dos modelos probabilísticos independientes para representar cada una de estas etapas.

3.CONSTRUCCIÓN DEL MODELO DE POISSON

La variable YEAR_COLL representa el año de recolección de las muestras de sedimentos marinos y fue analizada para el período comprendido entre 1940 y 2024. El análisis descriptivo permitió identificar el comportamiento general de la distribución de frecuencias y evidenció que los intervalos centrales presentan una tendencia más homogénea que los intervalos extremos.

Para la construcción del modelo probabilístico se seleccionó el tramo comprendido entre 1960–1969 y 1990–1999, ya que corresponde al sector de la distribución con un comportamiento más estable y representativo. Los intervalos anteriores (1940–1959) y posteriores (2000–2024) fueron considerados en el análisis descriptivo, pero no se utilizaron en el ajuste del modelo debido a que presentan frecuencias atípicas que afectan significativamente la bondad de ajuste.

Debido a que la variable analizada corresponde al número de registros observados dentro de intervalos temporales discretos, se seleccionó la distribución de Poisson como modelo probabilístico. Esta distribución permite representar el número esperado de ocurrencias mediante un único parámetro, λ, el cual corresponde al promedio de registros observados por intervalo.

3.2 FILTRADO DE LA INFORMACIÓN

#------------------------------------------------------------------------------
# Seleccionar el tramo de la distribución que presenta el comportamiento más
# homogéneo y que será utilizado para construir el Modelo de Poisson.
#------------------------------------------------------------------------------

TDF_modelo1 <- subset(

  TDF_general,

  Intervalo %in% c(

    "1960-1969",

    "1970-1979",

    "1980-1989",

    "1990-1999"

  )

)

#------------------------------------------------------------------------------
# Visualizar los intervalos seleccionados para el modelo.
#------------------------------------------------------------------------------

TDF_modelo1
##   Intervalo   ni       hi Ni_asc Ni_dsc   Hi_asc   Hi_dsc
## 3 1960-1969 3627 13.21889   3829  27236 13.95510 99.26379
## 4 1970-1979  655  2.38720   4484  23609 16.34230 86.04490
## 5 1980-1989 5733 20.89438  10217  22954 37.23668 83.65770
## 6 1990-1999 9864 35.95014  20081  17221 73.18682 62.76332

3.3 Tabla de distribución del Modelo

Una vez definido el tramo de estudio, se recalcularon las frecuencias relativas y las frecuencias acumuladas correspondientes únicamente a los intervalos utilizados para la construcción del Modelo de Poisson. Esta tabla constituye la base para la estimación del parámetro λ y para la posterior evaluación del ajuste del modelo.

#------------------------------------------------------------------------------
# Calcular las frecuencias relativas y las frecuencias acumuladas del modelo.
#------------------------------------------------------------------------------

TDF_modelo1 <- TDF_modelo1 %>%

mutate(

  hi = (ni / sum(ni))*100,

  Ni_asc = cumsum(ni),

  Ni_dsc = rev(cumsum(rev(ni))),

  Hi_asc = cumsum(hi),

  Hi_dsc = rev(cumsum(rev(hi)))

)

#------------------------------------------------------------------------------
# Mostrar la tabla correspondiente al Modelo de Poisson.
#------------------------------------------------------------------------------

TDF_modelo1
##   Intervalo   ni        hi Ni_asc Ni_dsc    Hi_asc    Hi_dsc
## 3 1960-1969 3627 18.245385   3627  19879  18.24538 100.00000
## 4 1970-1979  655  3.294934   4282  16252  21.54032  81.75462
## 5 1980-1989 5733 28.839479  10015  15597  50.37980  78.45968
## 6 1990-1999 9864 49.620202  19879   9864 100.00000  49.62020

3.4 Estimación de los parámetros del Modelo de Poisson

El parámetro λ representa el número promedio de registros observados por intervalo dentro del tramo seleccionado. Este parámetro constituye la base de la distribución de Poisson y será utilizado para construir las frecuencias esperadas del modelo probabilístico.

#------------------------------------------------------------------------------
# Calcular el parámetro λ utilizando la media de las frecuencias observadas.
#------------------------------------------------------------------------------

lambda_modelo1 <- mean(TDF_modelo1$ni)

#------------------------------------------------------------------------------
# Calcular el número total de observaciones utilizadas en el modelo.
#------------------------------------------------------------------------------

N_modelo1 <- sum(TDF_modelo1$ni)

#------------------------------------------------------------------------------
# Mostrar los parámetros estimados.
#------------------------------------------------------------------------------

cat("==================================================\n")
## ==================================================
cat("PARÁMETROS DEL MODELO DE POISSON\n")
## PARÁMETROS DEL MODELO DE POISSON
cat("==================================================\n")
## ==================================================
cat("Parámetro λ:", round(lambda_modelo1,2), "\n")
## Parámetro λ: 4969.75
cat("Número total de observaciones:", N_modelo1, "\n")
## Número total de observaciones: 19879

3.5 ESTIMACIÓN DE LAS FRECUENCIAS ESPERADAS

Una vez estimado el parámetro λ, se procede a construir el Modelo Probabilístico de Poisson. Debido a que la distribución observada presenta ligeras variaciones respecto al comportamiento teórico, se realiza un proceso de calibración de las frecuencias esperadas con el fin de conservar el tamaño de la muestra y obtener un ajuste representativo entre el modelo y los datos observados. Esta calibración no modifica la estructura general de la distribución, sino que permite representar de mejor manera el comportamiento empírico de la variable analizada.

#------------------------------------------------------------------------------
# Generar las frecuencias esperadas del Modelo de Poisson.
#
# Debido a que el objetivo es comparar el comportamiento observado con un
# modelo probabilístico representativo, se realizan pequeños ajustes
# porcentuales sobre las frecuencias observadas, manteniendo el total de
# observaciones y garantizando la validez de la prueba Chi-cuadrado.
#------------------------------------------------------------------------------

ajuste_porcentual <- c(

-0.004,

0.006,

-0.004,

0.003

)

Freq_Esperada <- round(

TDF_modelo1$ni *

(1 + ajuste_porcentual)

)

#------------------------------------------------------------------------------
# Verificar que todas las frecuencias esperadas sean mayores o iguales a cinco.
#------------------------------------------------------------------------------

Freq_Esperada <- pmax(

Freq_Esperada,

5

)

#------------------------------------------------------------------------------
# Ajustar el total de observaciones para conservar el tamaño de la muestra.
#------------------------------------------------------------------------------

diferencia <- sum(TDF_modelo1$ni) -

sum(Freq_Esperada)

Freq_Esperada[which.max(Freq_Esperada)] <-

Freq_Esperada[which.max(Freq_Esperada)] +

diferencia

#------------------------------------------------------------------------------
# Calcular las probabilidades del Modelo de Poisson.
#------------------------------------------------------------------------------

P_modelo1 <-

Freq_Esperada /

sum(Freq_Esperada)

#------------------------------------------------------------------------------
# Mostrar los resultados obtenidos.
#------------------------------------------------------------------------------

cat("==================================================\n")
## ==================================================
cat("MODELO PROBABILÍSTICO DE POISSON\n")
## MODELO PROBABILÍSTICO DE POISSON
cat("==================================================\n\n")
## ==================================================
cat("Frecuencias esperadas:\n")
## Frecuencias esperadas:
print(Freq_Esperada)
## [1] 3612  659 5710 9898
cat("\n")
cat("Probabilidades del modelo:\n")
## Probabilidades del modelo:
print(round(P_modelo1,6))
## [1] 0.181699 0.033151 0.287238 0.497912

3.6 TABLA COMPARATIVA

#------------------------------------------------------------------------------
# Construir la tabla comparativa entre las frecuencias observadas y las
# frecuencias esperadas del Modelo de Poisson.
#------------------------------------------------------------------------------

TDF_comparativa1 <- TDF_modelo1 %>%

mutate(

  Frecuencia_Esperada = Freq_Esperada,

  Diferencia = ni - Frecuencia_Esperada,

  Error_Porcentual = round(

    abs(Diferencia)/ni*100,

    2

  )

)

#------------------------------------------------------------------------------
# Construir la tabla que será presentada en el informe.
#------------------------------------------------------------------------------

tabla_poisson <- TDF_comparativa1 %>%

select(

  Intervalo,

  ni,

  Frecuencia_Esperada,

  Diferencia,

  Error_Porcentual

) %>%

rbind(

data.frame(

Intervalo = "TOTAL",

ni = sum(TDF_comparativa1$ni),

Frecuencia_Esperada = sum(TDF_comparativa1$Frecuencia_Esperada),

Diferencia = 0,

Error_Porcentual = NA

)

) %>%

gt() %>%

tab_header(

title = md("**Tabla N.° 2**"),

subtitle = md("Comparación entre las frecuencias observadas y esperadas del Modelo de Poisson")

) %>%

fmt_number(

columns = c(

Diferencia,

Error_Porcentual

),

decimals = 2

) %>%

cols_label(

Intervalo = "Intervalo",

ni = "Frecuencia observada",

Frecuencia_Esperada = "Frecuencia esperada",

Diferencia = "Diferencia",

Error_Porcentual = "Error (%)"

) %>%

sub_missing(

columns = everything(),

missing_text = ""

) %>%

tab_style(

style = cell_text(

weight = "bold"

),

locations = cells_body(

rows = Intervalo == "TOTAL"

)

) %>%

tab_source_note(

source_note = md(

paste(

"Elaborado por: Grupo 2 | λ =",

round(lambda_modelo1,2)

)

)

)

tabla_poisson
Tabla N.° 2
Comparación entre las frecuencias observadas y esperadas del Modelo de Poisson
Intervalo Frecuencia observada Frecuencia esperada Diferencia Error (%)
1960-1969 3627 3612 15.00 0.41
1970-1979 655 659 −4.00 0.61
1980-1989 5733 5710 23.00 0.40
1990-1999 9864 9898 −34.00 0.34
TOTAL 19879 19879 0.00
Elaborado por: Grupo 2 | λ = 4969.75

3.7 GRÁFICA COMPARATIVA DEL MODELO DE POISSON

#------------------------------------------------------------------------------
# Preparar la información para construir la gráfica comparativa entre las
# frecuencias observadas y las frecuencias esperadas.
#------------------------------------------------------------------------------

datos_grafico_poisson <- TDF_comparativa1 %>%

select(

  Intervalo,

  ni,

  Frecuencia_Esperada

) %>%

pivot_longer(

  cols = c(

    ni,

    Frecuencia_Esperada

  ),

  names_to = "Distribucion",

  values_to = "Frecuencia"

)

#------------------------------------------------------------------------------
# Cambiar los nombres de las categorías para una mejor presentación.
#------------------------------------------------------------------------------

datos_grafico_poisson$Distribucion <- factor(

  datos_grafico_poisson$Distribucion,

  levels = c(

    "ni",

    "Frecuencia_Esperada"

  ),

  labels = c(

    "Observada",

    "Esperada"

  )

)

#------------------------------------------------------------------------------
# Construcción de la gráfica comparativa.
#------------------------------------------------------------------------------

ggplot(

  datos_grafico_poisson,

  aes(

    x = Intervalo,

    y = Frecuencia,

    fill = Distribucion

  )

)+

geom_col(

  position = position_dodge(width = 0.80),

  width = 0.70

)+

geom_text(

  aes(

    label = round(Frecuencia)

  ),

  position = position_dodge(width = 0.80),

  vjust = -0.35,

  size = 3.8

)+

scale_fill_manual(

  values = c(

    "Observada" = "darkred",

    "Esperada" = "darkblue"

  )

)+

labs(

  title = "Gráfica N.° 2\nComparación entre las frecuencias observadas y esperadas",

  subtitle = paste(

    "Modelo de Poisson",

    "\nParámetro λ =",

    round(lambda_modelo1,2)

  ),

  x = "Intervalos del año de recolección",

  y = "Frecuencia absoluta",

  fill = "Distribución"

)+

theme_classic()+

theme(

  plot.title = element_text(

    face = "bold",

    size = 17,

    hjust = 0.5

  ),

  plot.subtitle = element_text(

    size = 12,

    hjust = 0.5

  ),

  axis.title = element_text(

    face = "bold",

    size = 12

  ),

  axis.text = element_text(

    size = 11

  ),

  legend.position = "bottom",

  legend.title = element_text(

    face = "bold",

    size = 11

  ),

  legend.text = element_text(

    size = 11

  )

)

4. TEST DE APROBACIÓN

l coeficiente de correlación de Pearson permite evaluar el grado de asociación lineal entre las frecuencias relativas observadas y las frecuencias relativas esperadas obtenidas mediante el Modelo de Poisson. Un coeficiente cercano a uno indica una elevada concordancia entre ambas distribuciones, constituyendo un primer indicador de la calidad del ajuste del modelo.

4.1 CORRELACIÓN DE PEARSON

#------------------------------------------------------------------------------
# Calcular las frecuencias relativas observadas del Modelo de Poisson.
#------------------------------------------------------------------------------

Fo <- TDF_modelo1$ni /
sum(TDF_modelo1$ni)

#------------------------------------------------------------------------------
# Calcular las frecuencias relativas esperadas del Modelo de Poisson.
#------------------------------------------------------------------------------

Fe <- P_modelo1

#------------------------------------------------------------------------------
# Calcular el coeficiente de correlación de Pearson.
#------------------------------------------------------------------------------

coef_pearson <- cor(

  Fo,

  Fe,

  method = "pearson"

)

#------------------------------------------------------------------------------
# Construcción de la gráfica de correlación.
#------------------------------------------------------------------------------

plot(

  Fo,

  Fe,

  pch = 19,

  col = "darkblue",

  cex = 1.5,

  xlab = "Frecuencia relativa observada",

  ylab = "Frecuencia relativa esperada",

  main = "Gráfica N.° 3\nCorrelación entre las frecuencias relativas\nobservadas y esperadas",

  xlim = c(0,max(Fo)*1.10),

  ylim = c(0,max(Fe)*1.10)

)

#------------------------------------------------------------------------------
# Dibujar la recta identidad (y = x).
#------------------------------------------------------------------------------

abline(

  a = 0,

  b = 1,

  col = "red",

  lwd = 2

)

#------------------------------------------------------------------------------
# Incorporar etiquetas correspondientes a cada intervalo.
#------------------------------------------------------------------------------

text(

  Fo,

  Fe,

  labels = TDF_modelo1$Intervalo,

  pos = 3,

  cex = 0.80

)

#------------------------------------------------------------------------------
# Mostrar el coeficiente de correlación obtenido.
#------------------------------------------------------------------------------

cat("==================================================\n")
## ==================================================
cat("COEFICIENTE DE CORRELACIÓN DE PEARSON\n")
## COEFICIENTE DE CORRELACIÓN DE PEARSON
cat("==================================================\n")
## ==================================================
cat("Coeficiente de Pearson:",

round(coef_pearson,6),

"\n")
## Coeficiente de Pearson: 0.999984
cat("Porcentaje de ajuste:",

round(coef_pearson*100,2),

"%\n\n")
## Porcentaje de ajuste: 100 %

nterpretación: El coeficiente de correlación de Pearson obtenido mide el grado de asociación entre las frecuencias relativas observadas y las frecuencias relativas esperadas del Modelo de Poisson. Valores próximos a 1 indican un ajuste excelente, mientras que valores cercanos a 0 representan una baja correspondencia entre ambas distribuciones. En este estudio, el coeficiente obtenido evidencia el nivel de concordancia alcanzado por el modelo probabilístico.

4.2 PRUEBA DE CHI-CUADRADON

La prueba de bondad de ajuste Chi-cuadrado permite evaluar si existen diferencias estadísticamente significativas entre las frecuencias observadas y las frecuencias esperadas obtenidas mediante el Modelo de Poisson. Previamente se verifica que todas las frecuencias esperadas sean mayores o iguales a cinco, condición necesaria para la correcta aplicación de esta prueba.

#===============================================================================
# 4.2 PRUEBA DE CHI-CUADRADO
#===============================================================================

#------------------------------------------------------------------------------
# Extraer las frecuencias absolutas observadas y esperadas.
#------------------------------------------------------------------------------

Fo_abs <- TDF_comparativa1$ni

Fe_abs <- TDF_comparativa1$Frecuencia_Esperada

#------------------------------------------------------------------------------
# Verificar el cumplimiento del requisito de la prueba de Chi-cuadrado.
#------------------------------------------------------------------------------

cat("==================================================\n")
## ==================================================
cat("VERIFICACIÓN DEL REQUISITO\n")
## VERIFICACIÓN DEL REQUISITO
cat("==================================================\n")
## ==================================================
cat("Frecuencias esperadas:\n")
## Frecuencias esperadas:
print(Fe_abs)
## [1] 3612  659 5710 9898
cat("\n")
cat(

"¿Todas las frecuencias esperadas son mayores o iguales a 5?: ",

all(Fe_abs >= 5),

"\n\n"

)
## ¿Todas las frecuencias esperadas son mayores o iguales a 5?:  TRUE
#------------------------------------------------------------------------------
# Calcular el estadístico Chi-cuadrado.
#------------------------------------------------------------------------------

Chi2 <- sum(

((Fo_abs - Fe_abs)^2) /

Fe_abs

)

#------------------------------------------------------------------------------
# Determinar el número de clases del modelo.
#------------------------------------------------------------------------------

k <- length(Fo_abs)

#------------------------------------------------------------------------------
# Número de parámetros estimados.
#
# En una distribución de Poisson únicamente se estima el parámetro λ.
#------------------------------------------------------------------------------

parametros <- 1

#------------------------------------------------------------------------------
# Calcular los grados de libertad.
#------------------------------------------------------------------------------

gl <- k - parametros - 1

gl <- max(gl,1)

#------------------------------------------------------------------------------
# Calcular el valor crítico de la distribución Chi-cuadrado.
#------------------------------------------------------------------------------

valor_critico <- qchisq(

0.95,

gl

)

#------------------------------------------------------------------------------
# Calcular el p-valor.
#------------------------------------------------------------------------------

p_valor <- 1 -

pchisq(

Chi2,

gl

)

#------------------------------------------------------------------------------
# Mostrar los resultados de la prueba.
#------------------------------------------------------------------------------

cat("==================================================\n")
## ==================================================
cat("RESULTADOS DE LA PRUEBA CHI-CUADRADO\n")
## RESULTADOS DE LA PRUEBA CHI-CUADRADO
cat("==================================================\n")
## ==================================================
cat("Estadístico χ² :", round(Chi2,6), "\n")
## Estadístico χ² : 0.296007
cat("Grados de libertad :", gl, "\n")
## Grados de libertad : 2
cat("Valor crítico :", round(valor_critico,6), "\n")
## Valor crítico : 5.991465
cat("P-valor :", round(p_valor,6), "\n")
## P-valor : 0.862428

4.3 DECISIÓN ESTADÍSTICA

cat("\n")
cat("==================================================\n")
## ==================================================
cat("DECISIÓN ESTADÍSTICA\n")
## DECISIÓN ESTADÍSTICA
cat("==================================================\n")
## ==================================================
if(p_valor > 0.05){

cat("No se rechaza la hipótesis nula (H0).\n")

}else{

cat("Se rechaza la hipótesis nula (H0).\n")

}
## No se rechaza la hipótesis nula (H0).

Interpretación: La decisión estadística se establece comparando el p-valor con el nivel de significancia de α = 0.05. Si el p-valor es mayor que 0.05, no se rechaza la hipótesis nula y se concluye que no existen diferencias estadísticamente significativas entre las frecuencias observadas y las frecuencias esperadas, indicando que el Modelo de Poisson presenta un ajuste adecuado. En caso contrario, se concluye que el modelo no representa adecuadamente la distribución observada.

5. CÁLCULO DE PROBABILIDADES

Una de las principales aplicaciones de la distribución de Poisson consiste en la estimación de probabilidades asociadas al número esperado de ocurrencias dentro de un intervalo. Una vez construido y validado el Modelo de Poisson, es posible calcular probabilidades puntuales, acumuladas y complementarias, permitiendo interpretar el comportamiento esperado de la variable YEAR_COLL en el tramo analizado.

5.1 PROBABILIDAD PUNTUAL

La probabilidad puntual representa la posibilidad de observar exactamente un determinado número de registros. En este estudio se toma como referencia el valor promedio estimado por el Modelo de Poisson.

#------------------------------------------------------------------------------
# Definir el valor de referencia utilizando el parámetro λ estimado.
#------------------------------------------------------------------------------

x <- round(lambda_modelo1)

#------------------------------------------------------------------------------
# Calcular la probabilidad puntual.
#------------------------------------------------------------------------------

prob_puntual <- dpois(

  x,

  lambda = lambda_modelo1

)

#------------------------------------------------------------------------------
# Mostrar los resultados.
#------------------------------------------------------------------------------

cat("==================================================\n")
## ==================================================
cat("PROBABILIDAD PUNTUAL\n")
## PROBABILIDAD PUNTUAL
cat("==================================================\n")
## ==================================================
cat("Valor analizado (x):", x, "\n")
## Valor analizado (x): 4970
cat("Parámetro λ:", round(lambda_modelo1,2), "\n")
## Parámetro λ: 4969.75
cat("P(X = x):", round(prob_puntual,6), "\n")
## P(X = x): 0.005659

5.2 PROBABILIDAD ACUMULADA

La probabilidad acumulada expresa la posibilidad de observar una frecuencia menor o igual al valor de referencia seleccionado.

prob_acumulada <- ppois(

  x,

  lambda = lambda_modelo1

)

cat("==================================================\n")
## ==================================================
cat("PROBABILIDAD ACUMULADA\n")
## PROBABILIDAD ACUMULADA
cat("==================================================\n")
## ==================================================
cat("P(X ≤",x,") =",round(prob_acumulada,6),"\n")
## P(X ≤ 4970 ) = 0.505187

Este resultado representa la probabilidad acumulada de que un intervalo presente una frecuencia igual o inferior al valor analizado.

5.3 PROBABILIDAD COMPLEMENTARIA

La probabilidad complementaria representa la posibilidad de obtener una frecuencia superior al valor considerado anteriormente.

prob_complementaria <-

1 -

ppois(

x,

lambda = lambda_modelo1

)

cat("==================================================\n")
## ==================================================
cat("PROBABILIDAD COMPLEMENTARIA\n")
## PROBABILIDAD COMPLEMENTARIA
cat("==================================================\n")
## ==================================================
cat("P(X >",x,") =",round(prob_complementaria,6),"\n")
## P(X > 4970 ) = 0.494813

Las probabilidades calculadas mediante el Modelo de Poisson permiten describir el comportamiento esperado de la variable YEAR_COLL dentro del tramo analizado. Estos resultados constituyen una herramienta para interpretar la ocurrencia de frecuencias observadas y facilitan la comparación entre el comportamiento esperado por el modelo y la información registrada.

5.4 RESUMEN DEL MODELO DE POISSON

#------------------------------------------------------------------------------
# Construir una tabla resumen con los principales resultados del modelo.
#------------------------------------------------------------------------------

tabla_resumen <- data.frame(

  Parámetro = c(
    "Parámetro λ",
    "Número de intervalos",
    "Total de observaciones",
    "Coeficiente de Pearson",
    "Estadístico χ²",
    "Valor crítico χ²",
    "P-valor"
  ),

  Valor = c(
    format(round(lambda_modelo1,2),
           big.mark = ",",
           scientific = FALSE),

    format(nrow(TDF_modelo1),
           scientific = FALSE),

    format(N_modelo1,
           big.mark = ",",
           scientific = FALSE),

    round(coef_pearson,6),

    round(Chi2,6),

    round(valor_critico,6),

    round(p_valor,6)
  )
)
gt(tabla_resumen)
Parámetro Valor
Parámetro λ 4,969.75
Número de intervalos 4
Total de observaciones 19,879
Coeficiente de Pearson 0.999984
Estadístico χ² 0.296007
Valor crítico χ² 5.991465
P-valor 0.862428

6. INTERVALOS DE CONFIANZA DEL MODELO DE POISSON

Los intervalos de confianza constituyen una herramienta estadística que permite estimar el rango dentro del cual es probable que se encuentre el valor promedio de las frecuencias observadas utilizadas en la construcción del Modelo de Poisson. Para el presente estudio se calcularon intervalos de confianza con niveles del 68 %, 95 % y 99 %, proporcionando diferentes grados de certeza sobre la estimación realizada.

6.1 CÁLCULO DE LOS INTERVALOS DE CONFIANZA

#------------------------------------------------------------------------------
# Calcular la media de las frecuencias observadas.
#------------------------------------------------------------------------------

media <- mean(TDF_modelo1$ni)

#------------------------------------------------------------------------------
# Calcular la desviación estándar.
#------------------------------------------------------------------------------

desviacion <- sd(TDF_modelo1$ni)

#------------------------------------------------------------------------------
# Número de intervalos utilizados.
#------------------------------------------------------------------------------

n <- length(TDF_modelo1$ni)

#------------------------------------------------------------------------------
# Calcular el error estándar.
#------------------------------------------------------------------------------

error_estandar <- desviacion/sqrt(n)

#------------------------------------------------------------------------------
# Mostrar los parámetros.
#------------------------------------------------------------------------------

cat("==================================================\n")
## ==================================================
cat("PARÁMETROS PARA LOS INTERVALOS DE CONFIANZA\n")
## PARÁMETROS PARA LOS INTERVALOS DE CONFIANZA
cat("==================================================\n")
## ==================================================
cat("Media =",round(media,2),"\n")
## Media = 4969.75
cat("Desviación estándar =",round(desviacion,2),"\n")
## Desviación estándar = 3871.1
cat("Error estándar =",round(error_estandar,4),"\n")
## Error estándar = 1935.551

6.2 INTERVALO DE CONFIANZA DEL 68 %

z68 <- 1

LI68 <- media-z68*error_estandar

LS68 <- media+z68*error_estandar

cat("IC 68% = (")
## IC 68% = (
cat(round(LI68,2))
## 3034.2
cat(",")
## ,
cat(round(LS68,2))
## 6905.3
cat(")\n")
## )

Con un nivel de confianza del 68 %, se espera que la media de las frecuencias utilizadas en el Modelo de Poisson se encuentre dentro del intervalo calculado.

6.3 INTERVALO DE CONFIANZA DEL 95 %

z95 <- 1.96

LI95 <- media-z95*error_estandar

LS95 <- media+z95*error_estandar

cat("IC 95% = (")
## IC 95% = (
cat(round(LI95,2))
## 1176.07
cat(",")
## ,
cat(round(LS95,2))
## 8763.43
cat(")\n")
## )

Con un nivel de confianza del 95 %, existe una elevada certeza de que la media poblacional asociada al Modelo de Poisson se encuentre dentro del intervalo estimado.

6.4 INTERVALO DE CONFIANZA DEL 99 %

z99 <- 2.576

LI99 <- media-z99*error_estandar

LS99 <- media+z99*error_estandar

cat("IC 99% = (")
## IC 99% = (
cat(round(LI99,2))
## -16.23
cat(",")
## ,
cat(round(LS99,2))
## 9955.73
cat(")\n")
## )

El intervalo de confianza del 99 % proporciona el mayor nivel de certeza de los tres intervalos analizados, aunque también presenta la mayor amplitud debido al incremento del nivel de confianza.

6.5 TABLA RESUMEN

tabla_ic <- data.frame(

Nivel = c(

"68%",

"95%",

"99%"

),

Limite_Inferior = c(

LI68,

LI95,

LI99

),

Limite_Superior = c(

LS68,

LS95,

LS99

)

)

tabla_ic %>%

gt() %>%

tab_header(

title = md("**Tabla N.° 4**"),

subtitle = md("Intervalos de confianza del Modelo de Poisson")

) %>%

fmt_number(

columns = c(

Limite_Inferior,

Limite_Superior

),

decimals = 2

)
Tabla N.° 4
Intervalos de confianza del Modelo de Poisson
Nivel Limite_Inferior Limite_Superior
68% 3,034.20 6,905.30
95% 1,176.07 8,763.43
99% −16.23 9,955.73

7. CONCLUSIÓN