library(readxl)
library(dplyr)
library(gt)
options(scipen = 999)
datos <- read_excel(
"datos_nuevoartes_.xlsx"
)
if(!"fatality_count" %in% names(datos)){
stop(
"La columna fatality_count no existe en el archivo datos_nuevoartes_.xlsx."
)
}
dim(datos)
## [1] 11033 35
La variable fatality_count representa el numero de
personas fallecidas en cada deslizamiento.
Para desarrollar el modelo geometrico se analizan exclusivamente los eventos mortales:
El objetivo es estudiar como disminuye la proporcion de eventos conforme aumenta el numero de fallecidos.
fatality_original <- suppressWarnings(
as.numeric(datos$fatality_count)
)
n_original <- length(
fatality_original
)
n_faltantes <- sum(
is.na(fatality_original)
)
n_ceros <- sum(
fatality_original == 0,
na.rm = TRUE
)
n_negativos <- sum(
fatality_original < 0,
na.rm = TRUE
)
fatality <- fatality_original[
!is.na(fatality_original) &
fatality_original > 0
]
N <- length(fatality)
if(N == 0){
stop(
"No existen registros mayores que cero en la variable fatality_count."
)
}
resumen_seleccion <- data.frame(
Indicador = c(
"Registros originales",
"Datos vacios excluidos",
"Valores iguales a cero excluidos",
"Valores negativos excluidos",
"Eventos mortales analizados"
),
Resultado = c(
n_original,
n_faltantes,
n_ceros,
n_negativos,
N
)
)
resumen_seleccion %>%
gt() %>%
tab_header(
title = md("**Tabla N. 1**"),
subtitle = md(
"Seleccion de los eventos mortales para el modelo geometrico"
)
) %>%
tab_options(
table.width = pct(100)
) %>%
tab_source_note(
source_note = md(
"Elaborado por: Grupo 1 - Carrera de Geologia"
)
)
| Tabla N. 1 | |
| Seleccion de los eventos mortales para el modelo geometrico | |
| Indicador | Resultado |
|---|---|
| Registros originales | 11033 |
| Datos vacios excluidos | 1380 |
| Valores iguales a cero excluidos | 7206 |
| Valores negativos excluidos | 0 |
| Eventos mortales analizados | 2447 |
| Elaborado por: Grupo 1 - Carrera de Geologia | |
Debido a que la variable presenta numerosos valores diferentes, se utiliza la regla de Sturges para definir el numero de intervalos:
\[ k=1+3.322\log_{10}(N) \]
xmin <- min(fatality)
xmax <- max(fatality)
R <- xmax - xmin
k_sturges <- ceiling(
1 + 3.322 * log10(N)
)
A <- max(
1,
ceiling((R + 1) / k_sturges)
)
Li <- seq(
from = xmin,
to = xmax,
by = A
)
Ls <- pmin(
Li + A - 1,
xmax
)
k_modelo <- length(Li)
if(k_modelo < 2){
stop(
"Se necesitan al menos dos intervalos para desarrollar el modelo geometrico."
)
}
MC <- round(
(Li + Ls) / 2,
2
)
intervalos <- ifelse(
Li == Ls,
paste0("[",Li,"]"),
paste0("[",Li," - ",Ls,"]")
)
ni <- sapply(
seq_along(Li),
function(i){
sum(
fatality >= Li[i] &
fatality <= Ls[i]
)
}
)
if(sum(ni) != N){
stop(
"La suma de las cantidades por intervalo no coincide con el total de datos."
)
}
hi <- (
ni / N
) * 100
p_s <- ni / N
TDF_geometrica <- data.frame(
Intervalo = intervalos,
Li = Li,
Ls = Ls,
MC = MC,
Cantidad = ni,
Porcentaje = hi,
Probabilidad = p_s
)
fila_total <- data.frame(
Intervalo = "TOTAL",
Li = NA,
Ls = NA,
MC = NA,
Cantidad = sum(ni),
Porcentaje = 100,
Probabilidad = 1
)
tabla_frecuencias_final <- bind_rows(
TDF_geometrica,
fila_total
)
tabla_frecuencias_final %>%
gt() %>%
tab_header(
title = md("**Tabla N. 2**"),
subtitle = md(
"Distribucion de frecuencias del numero de fallecidos en eventos mortales"
)
) %>%
cols_label(
Intervalo = "Intervalo",
Li = "Li",
Ls = "Ls",
MC = "MC",
Cantidad = "Cantidad",
Porcentaje = "Porcentaje (%)",
Probabilidad = "Probabilidad"
) %>%
fmt_number(
columns = c(
MC,
Porcentaje,
Probabilidad
),
decimals = 4
) %>%
sub_missing(
columns = everything(),
missing_text = ""
) %>%
tab_style(
style = cell_text(
weight = "bold"
),
locations = cells_body(
rows = Intervalo == "TOTAL"
)
) %>%
tab_options(
table.width = pct(100)
) %>%
tab_source_note(
source_note = md(
"Elaborado por: Grupo 1 - Carrera de Geologia"
)
)
| Tabla N. 2 | ||||||
| Distribucion de frecuencias del numero de fallecidos en eventos mortales | ||||||
| Intervalo | Li | Ls | MC | Cantidad | Porcentaje (%) | Probabilidad |
|---|---|---|---|---|---|---|
| [1 - 39] | 1 | 39 | 20.0000 | 1646 | 67.2660 | 0.6727 |
| [40 - 78] | 40 | 78 | 59.0000 | 550 | 22.4765 | 0.2248 |
| [79 - 117] | 79 | 117 | 98.0000 | 151 | 6.1708 | 0.0617 |
| [118 - 156] | 118 | 156 | 137.0000 | 36 | 1.4712 | 0.0147 |
| [157 - 195] | 157 | 195 | 176.0000 | 24 | 0.9808 | 0.0098 |
| [196 - 234] | 196 | 234 | 215.0000 | 8 | 0.3269 | 0.0033 |
| [235 - 273] | 235 | 273 | 254.0000 | 7 | 0.2861 | 0.0029 |
| [274 - 312] | 274 | 312 | 293.0000 | 6 | 0.2452 | 0.0025 |
| [313 - 351] | 313 | 351 | 332.0000 | 7 | 0.2861 | 0.0029 |
| [352 - 390] | 352 | 390 | 371.0000 | 3 | 0.1226 | 0.0012 |
| [391 - 429] | 391 | 429 | 410.0000 | 2 | 0.0817 | 0.0008 |
| [430 - 468] | 430 | 468 | 449.0000 | 4 | 0.1635 | 0.0016 |
| [469 - 500] | 469 | 500 | 484.5000 | 3 | 0.1226 | 0.0012 |
| TOTAL | 2447 | 100.0000 | 1.0000 | |||
| Elaborado por: Grupo 1 - Carrera de Geologia | ||||||
par(
mar = c(9,5,4,2)
)
limite_y <- max(hi) * 1.18
posiciones <- barplot(
hi,
names.arg = intervalos,
col = "#D8C3CA",
border = "#6D213C",
space = 0.35,
las = 2,
ylim = c(0,limite_y),
main = paste0(
"Distribucion porcentual del numero de fallecidos\n",
"en deslizamientos mortales a nivel mundial"
),
xlab = "",
ylab = "Porcentaje relativo"
)
text(
posiciones,
hi,
labels = round(hi,2),
pos = 3,
cex = 0.75,
font = 2
)
mtext(
"Intervalos del numero de fallecidos",
side = 1,
line = 7
)
box()
Se conjetura que la distribucion del numero de fallecidos en los deslizamientos mortales puede ajustarse a un modelo geometrico.
La conjetura se plantea porque la mayor proporcion de observaciones se concentra en los primeros intervalos y disminuye conforme aumenta el numero de fallecidos. Este comportamiento corresponde a una distribucion discreta con concentracion en los valores iniciales y una cola hacia la derecha.
Las hipotesis son:
\[ H_0: \text{La distribucion observada se ajusta a un modelo geometrico} \]
\[ H_1: \text{La distribucion observada no se ajusta a un modelo geometrico} \]
Como se realiza en el modelo del video, los intervalos se transforman en valores discretos consecutivos:
\[ 0,1,2,\ldots,k-1 \]
La media de los valores mapeados se calcula con las probabilidades observadas:
\[ \bar{x}=\sum x_i p_i \]
Para una distribucion geometrica con soporte en \(0,1,2,\ldots\), el parametro se estima mediante:
\[ p=\frac{1}{1+\bar{x}} \]
x_mapeado <- 0:(k_modelo - 1)
p_s_datos <- hi / 100
media_x <- sum(
x_mapeado *
p_s_datos
)
prob_geom <- 1 / (
1 + media_x
)
q_geom <- 1 - prob_geom
media_teorica_geom <- (
q_geom / prob_geom
)
varianza_teorica_geom <- (
q_geom / prob_geom^2
)
desviacion_teorica_geom <- sqrt(
varianza_teorica_geom
)
parametros_geom <- data.frame(
Parametro = c(
"Numero de intervalos",
"Media de los valores mapeados",
"Probabilidad geometrica p",
"Probabilidad complementaria q",
"Media teorica",
"Varianza teorica",
"Desviacion estandar teorica"
),
Resultado = c(
k_modelo,
media_x,
prob_geom,
q_geom,
media_teorica_geom,
varianza_teorica_geom,
desviacion_teorica_geom
)
)
parametros_geom %>%
gt() %>%
tab_header(
title = md("**Tabla N. 3**"),
subtitle = md(
"Parametros estimados del modelo geometrico"
)
) %>%
fmt_number(
columns = Resultado,
decimals = 4
) %>%
tab_options(
table.width = pct(100)
) %>%
tab_source_note(
source_note = md(
"Elaborado por: Grupo 1 - Carrera de Geologia"
)
)
| Tabla N. 3 | |
| Parametros estimados del modelo geometrico | |
| Parametro | Resultado |
|---|---|
| Numero de intervalos | 13.0000 |
| Media de los valores mapeados | 0.5570 |
| Probabilidad geometrica p | 0.6423 |
| Probabilidad complementaria q | 0.3577 |
| Media teorica | 0.5570 |
| Varianza teorica | 0.8673 |
| Desviacion estandar teorica | 0.9313 |
| Elaborado por: Grupo 1 - Carrera de Geologia | |
Para los primeros intervalos se calculan las probabilidades geometricas exactas. El ultimo intervalo concentra toda la probabilidad restante de la cola, de modo que la suma de las probabilidades teoricas sea igual a uno.
probabilidades_iniciales <- dgeom(
0:(k_modelo - 2),
prob = prob_geom
)
probabilidad_cola <- 1 - pgeom(
k_modelo - 2,
prob = prob_geom
)
P_teorica <- c(
probabilidades_iniciales,
probabilidad_cola
)
P_teorica <- P_teorica /
sum(P_teorica)
hi_modelo <- P_teorica * 100
Fe <- N * P_teorica
tabla_comparacion <- data.frame(
Intervalo = intervalos,
X = x_mapeado,
Cantidad_observada = ni,
Cantidad_esperada = Fe,
Porcentaje_observado = hi,
Porcentaje_modelo = hi_modelo
)
tabla_comparacion %>%
gt() %>%
tab_header(
title = md("**Tabla N. 4**"),
subtitle = md(
"Comparacion entre la distribucion observada y el modelo geometrico"
)
) %>%
cols_label(
Intervalo = "Intervalo",
X = "X",
Cantidad_observada = "Cantidad observada",
Cantidad_esperada = "Cantidad esperada",
Porcentaje_observado = "Porcentaje observado (%)",
Porcentaje_modelo = "Porcentaje del modelo (%)"
) %>%
fmt_number(
columns = c(
Cantidad_esperada,
Porcentaje_observado,
Porcentaje_modelo
),
decimals = 4
) %>%
tab_options(
table.width = pct(100)
) %>%
tab_source_note(
source_note = md(
"Elaborado por: Grupo 1 - Carrera de Geologia"
)
)
| Tabla N. 4 | |||||
| Comparacion entre la distribucion observada y el modelo geometrico | |||||
| Intervalo | X | Cantidad observada | Cantidad esperada | Porcentaje observado (%) | Porcentaje del modelo (%) |
|---|---|---|---|---|---|
| [1 - 39] | 0 | 1646 | 1,571.6034 | 67.2660 | 64.2257 |
| [40 - 78] | 1 | 550 | 562.2298 | 22.4765 | 22.9763 |
| [79 - 117] | 2 | 151 | 201.1336 | 6.1708 | 8.2196 |
| [118 - 156] | 3 | 36 | 71.9541 | 1.4712 | 2.9405 |
| [157 - 195] | 4 | 24 | 25.7411 | 0.9808 | 1.0519 |
| [196 - 234] | 5 | 8 | 9.2087 | 0.3269 | 0.3763 |
| [235 - 273] | 6 | 7 | 3.2943 | 0.2861 | 0.1346 |
| [274 - 312] | 7 | 6 | 1.1785 | 0.2452 | 0.0482 |
| [313 - 351] | 8 | 7 | 0.4216 | 0.2861 | 0.0172 |
| [352 - 390] | 9 | 3 | 0.1508 | 0.1226 | 0.0062 |
| [391 - 429] | 10 | 2 | 0.0540 | 0.0817 | 0.0022 |
| [430 - 468] | 11 | 4 | 0.0193 | 0.1635 | 0.0008 |
| [469 - 500] | 12 | 3 | 0.0108 | 0.1226 | 0.0004 |
| Elaborado por: Grupo 1 - Carrera de Geologia | |||||
datos_comparacion <- rbind(
Realidad = hi,
Modelo_geometrico = hi_modelo
)
par(
mar = c(9,5,4,2)
)
limite_comparacion <- max(
datos_comparacion
) * 1.25
posiciones_comparacion <- barplot(
datos_comparacion,
beside = TRUE,
names.arg = intervalos,
col = c(
"#D8C3CA",
"#6D213C"
),
border = "#4A1026",
las = 2,
ylim = c(
0,
limite_comparacion
),
main = paste0(
"Distribucion observada y modelo geometrico\n",
"del numero de fallecidos"
),
xlab = "",
ylab = "Porcentaje relativo"
)
legend(
"topright",
legend = c(
"Realidad",
"Modelo geometrico"
),
fill = c(
"#D8C3CA",
"#6D213C"
),
border = "#4A1026",
bty = "n",
horiz = TRUE
)
mtext(
"Intervalos del numero de fallecidos",
side = 1,
line = 7
)
box()
El coeficiente de Pearson compara las cantidades observadas con las cantidades esperadas mediante el modelo geometrico.
if(
sd(ni) > 0 &&
sd(Fe) > 0
){
coef_pearson <- cor(
ni,
Fe,
method = "pearson"
) * 100
} else {
coef_pearson <- NA_real_
}
coef_pearson
## [1] 99.89092
plot(
Fe,
ni,
pch = 19,
cex = 1.2,
col = "#6D213C",
main = "Relacion entre cantidades observadas y esperadas",
xlab = "Cantidad esperada",
ylab = "Cantidad observada"
)
modelo_pearson <- lm(
ni ~ Fe
)
abline(
modelo_pearson,
col = "#4A1026",
lwd = 2
)
grid()
Siguiendo el procedimiento del video, el contraste se calcula con las frecuencias relativas observadas y las probabilidades teoricas del modelo.
fo_chi <- ni / N
fe_chi <- P_teorica
fe_chi_segura <- pmax(
fe_chi,
0.000000000001
)
chi_calculado <- sum(
(
fo_chi -
fe_chi
)^2 /
fe_chi_segura
)
k_chi <- length(fo_chi)
grados_libertad <- k_chi - 1
chi_critico <- qchisq(
0.95,
df = grados_libertad
)
p_valor_chi <- pchisq(
chi_calculado,
df = grados_libertad,
lower.tail = FALSE
)
decision_chi <- ifelse(
chi_calculado < chi_critico,
"No se rechaza H0: el modelo geometrico es adecuado",
"Se rechaza H0: el modelo geometrico no es adecuado"
)
resumen_bondad <- data.frame(
Indicador = c(
"Coeficiente de Pearson (%)",
"Chi-cuadrado calculado",
"Grados de libertad",
"Chi-cuadrado critico",
"Valor p",
"Decision"
),
Resultado = c(
ifelse(
is.na(coef_pearson),
"No calculable",
format(
round(coef_pearson,2),
nsmall = 2
)
),
format(
round(chi_calculado,4),
nsmall = 4
),
grados_libertad,
format(
round(chi_critico,4),
nsmall = 4
),
format(
round(p_valor_chi,4),
nsmall = 4
),
decision_chi
)
)
resumen_bondad %>%
gt() %>%
tab_header(
title = md("**Tabla N. 5**"),
subtitle = md(
"Resultados de la bondad de ajuste del modelo geometrico"
)
) %>%
tab_options(
table.width = pct(100)
) %>%
tab_source_note(
source_note = md(
"Elaborado por: Grupo 1 - Carrera de Geologia"
)
)
| Tabla N. 5 | |
| Resultados de la bondad de ajuste del modelo geometrico | |
| Indicador | Resultado |
|---|---|
| Coeficiente de Pearson (%) | 99.89 |
| Chi-cuadrado calculado | 0.7916 |
| Grados de libertad | 12 |
| Chi-cuadrado critico | 21.0261 |
| Valor p | 1.0000 |
| Decision | No se rechaza H0: el modelo geometrico es adecuado |
| Elaborado por: Grupo 1 - Carrera de Geologia | |
Se calcula la probabilidad de que un evento mortal se ubique fuera del primer intervalo, es decir, que presente un numero de fallecidos mayor que el limite superior de la primera clase.
\[ P(X\geq1)=1-P(X=0) \]
prob_primer_intervalo <- dgeom(
0,
prob = prob_geom
)
prob_supera_primer_intervalo <- (
1 -
prob_primer_intervalo
)
prob_primer_intervalo_pct <- (
prob_primer_intervalo *
100
)
prob_supera_primer_intervalo_pct <- (
prob_supera_primer_intervalo *
100
)
tabla_probabilidades <- data.frame(
Evento = c(
paste0(
"Numero de fallecidos entre ",
Li[1],
" y ",
Ls[1]
),
paste0(
"Numero de fallecidos mayor que ",
Ls[1]
)
),
Probabilidad = c(
prob_primer_intervalo,
prob_supera_primer_intervalo
),
Porcentaje = c(
prob_primer_intervalo_pct,
prob_supera_primer_intervalo_pct
)
)
tabla_probabilidades %>%
gt() %>%
tab_header(
title = md("**Tabla N. 6**"),
subtitle = md(
"Probabilidades obtenidas mediante el modelo geometrico"
)
) %>%
fmt_number(
columns = Probabilidad,
decimals = 6
) %>%
fmt_number(
columns = Porcentaje,
decimals = 2
) %>%
cols_label(
Evento = "Evento",
Probabilidad = "Probabilidad",
Porcentaje = "Porcentaje (%)"
) %>%
tab_options(
table.width = pct(100)
) %>%
tab_source_note(
source_note = md(
"Elaborado por: Grupo 1 - Carrera de Geologia"
)
)
| Tabla N. 6 | ||
| Probabilidades obtenidas mediante el modelo geometrico | ||
| Evento | Probabilidad | Porcentaje (%) |
|---|---|---|
| Numero de fallecidos entre 1 y 39 | 0.642257 | 64.23 |
| Numero de fallecidos mayor que 39 | 0.357743 | 35.77 |
| Elaborado por: Grupo 1 - Carrera de Geologia | ||
colores_probabilidad <- c(
"#D8C3CA",
rep(
"#6D213C",
k_modelo - 1
)
)
par(
mar = c(9,5,4,2)
)
barplot(
P_teorica * 100,
names.arg = intervalos,
col = colores_probabilidad,
border = "#4A1026",
las = 2,
main = paste0(
"Probabilidad de superar el primer intervalo\n",
"P(X >= 1)"
),
xlab = "",
ylab = "Porcentaje relativo"
)
legend(
"topright",
legend = c(
"Primer intervalo",
"Valores superiores"
),
fill = c(
"#D8C3CA",
"#6D213C"
),
border = "#4A1026",
bty = "n"
)
mtext(
"Intervalos del numero de fallecidos",
side = 1,
line = 7
)
Se construye un intervalo de confianza del 95 % para la media poblacional del numero de fallecidos en los deslizamientos mortales.
\[ IC_{95\%} = \bar{x} \pm 1.96 \left( \frac{s}{\sqrt{N}} \right) \]
media_fatality <- mean(
fatality
)
desviacion_fatality <- sd(
fatality
)
error_estandar <- (
desviacion_fatality /
sqrt(N)
)
margen_error <- (
1.96 *
error_estandar
)
limite_inferior <- (
media_fatality -
margen_error
)
limite_superior <- (
media_fatality +
margen_error
)
limite_inferior_redondeado <- floor(
limite_inferior
)
limite_superior_redondeado <- ceiling(
limite_superior
)
tabla_intervalo <- data.frame(
Indicador = c(
"Media muestral",
"Desviacion estandar",
"Numero de observaciones",
"Error estandar",
"Limite inferior del 95 %",
"Limite superior del 95 %",
"Limite inferior redondeado",
"Limite superior redondeado"
),
Resultado = c(
media_fatality,
desviacion_fatality,
N,
error_estandar,
limite_inferior,
limite_superior,
limite_inferior_redondeado,
limite_superior_redondeado
)
)
tabla_intervalo %>%
gt() %>%
tab_header(
title = md("**Tabla N. 7**"),
subtitle = md(
"Intervalo de confianza para la media del numero de fallecidos"
)
) %>%
fmt_number(
columns = Resultado,
decimals = 4
) %>%
tab_options(
table.width = pct(100)
) %>%
tab_source_note(
source_note = md(
"Elaborado por: Grupo 1 - Carrera de Geologia"
)
)
| Tabla N. 7 | |
| Intervalo de confianza para la media del numero de fallecidos | |
| Indicador | Resultado |
|---|---|
| Media muestral | 30.9546 |
| Desviacion estandar | 51.6972 |
| Numero de observaciones | 2,447.0000 |
| Error estandar | 1.0451 |
| Limite inferior del 95 % | 28.9063 |
| Limite superior del 95 % | 33.0030 |
| Limite inferior redondeado | 28.0000 |
| Limite superior redondeado | 34.0000 |
| Elaborado por: Grupo 1 - Carrera de Geologia | |
if(
chi_calculado <
chi_critico
){
texto_decision <- paste0(
"Como el valor chi-cuadrado calculado es menor que el valor critico, ",
"**no se rechaza la hipotesis nula**. Por lo tanto, el modelo geometrico ",
"presenta un ajuste aceptable para la distribucion analizada."
)
} else {
texto_decision <- paste0(
"Como el valor chi-cuadrado calculado es mayor o igual que el valor critico, ",
"**se rechaza la hipotesis nula**. Por lo tanto, el modelo geometrico ",
"no representa adecuadamente la distribucion analizada."
)
}
cat(
paste0(
"Se analizaron **",
N,
" deslizamientos con al menos una persona fallecida**. ",
"Los valores iguales a cero y los registros vacios fueron excluidos porque ",
"el estudio se concentra en la severidad de los eventos mortales.\n\n",
"Los intervalos de la variable se transformaron en valores discretos desde ",
"0 hasta ",
k_modelo - 1,
", obteniendose un parametro geometrico estimado de **p = ",
round(prob_geom,4),
"**. El coeficiente de Pearson entre las cantidades observadas y esperadas fue de **",
ifelse(
is.na(coef_pearson),
"valor no calculable",
paste0(
round(coef_pearson,2),
" %"
)
),
"**.\n\n",
texto_decision,
"\n\n",
"De acuerdo con el modelo geometrico, la probabilidad de que un deslizamiento mortal ",
"presente mas de ",
Ls[1],
" fallecidos es de **",
round(
prob_supera_primer_intervalo_pct,
2
),
" %**.\n\n",
"Con un nivel de confianza del 95 %, la media poblacional del numero de fallecidos ",
"se encuentra entre **",
round(
limite_inferior,
2
),
" y ",
round(
limite_superior,
2
),
" fallecidos**. Al tratarse de una variable discreta, el intervalo redondeado ",
"se expresa entre **",
limite_inferior_redondeado,
" y ",
limite_superior_redondeado,
" fallecidos**."
)
)
Se analizaron 2447 deslizamientos con al menos una persona fallecida. Los valores iguales a cero y los registros vacios fueron excluidos porque el estudio se concentra en la severidad de los eventos mortales.
Los intervalos de la variable se transformaron en valores discretos desde 0 hasta 12, obteniendose un parametro geometrico estimado de p = 0.6423. El coeficiente de Pearson entre las cantidades observadas y esperadas fue de 99.89 %.
Como el valor chi-cuadrado calculado es menor que el valor critico, no se rechaza la hipotesis nula. Por lo tanto, el modelo geometrico presenta un ajuste aceptable para la distribucion analizada.
De acuerdo con el modelo geometrico, la probabilidad de que un deslizamiento mortal presente mas de 39 fallecidos es de 35.77 %.
Con un nivel de confianza del 95 %, la media poblacional del numero de fallecidos se encuentra entre 28.91 y 33 fallecidos. Al tratarse de una variable discreta, el intervalo redondeado se expresa entre 28 y 34 fallecidos.