EJERCICIO 3

📌 Introducción

El Teorema de Bayes es una herramienta fundamental en estadística que permite actualizar probabilidades a medida que se obtiene nueva información.

En este caso, se aplica al diagnóstico médico para calcular la probabilidad de que una persona tenga cáncer dado que su prueba resultó positiva.

🎯 Objetivo

  • Aplicar el Teorema de Bayes en un caso real.
  • Interpretar probabilidades condicionales en diagnóstico médico.
  • Analizar cómo la prevalencia afecta los resultados.

Una mamografía detecta cáncer de mama. La prevalencia (prior) es del 1% en mujeres de 40–50 años. La prueba tiene sensibilidad del 80% (detecta correctamente el 80% de casos reales) y especificidad del 90.4% (tasa de falsos positivos del 9.6%). Una paciente da positivo. ¿Cuál es la probabilidad real de que tenga cáncer?

🧩 1. Definición de datos

# ====================================================
# BAYES — Caso 1: Diagnóstico Médico
# ====================================================

# Datos del problema
prevalencia  <- 0.01   # Prior: 1% de la población tiene cáncer
sensibilidad <- 0.80   # P(Positivo | Cáncer)
falso_pos    <- 0.096  # P(Positivo | No Cáncer)

Interpretación:

Se definen los datos iniciales del problema:

La prevalencia representa la probabilidad inicial de tener cáncer. La sensibilidad mide qué tan buena es la prueba detectando enfermos. El falso positivo indica errores en personas sanas.

🧩 2. Definición de estados y probabilidades

# Tabla Bayesiana
estados <- c("Cáncer", "No Cáncer")
prior   <- c(prevalencia, 1 - prevalencia)
likel   <- c(sensibilidad, falso_pos)   # P(Positivo | estado)

Estados: posibles situaciones (tener o no cáncer). Prior: probabilidades iniciales antes de ver la prueba. Likelihood (verosimilitud): probabilidad de obtener un resultado positivo dado cada estado.

🧩 3. Probabilidades conjuntas

# Paso 1-3: conjuntas
conjunta <- prior * likel

🧩 4. Probabilidad total del positivo

# Paso 4: probabilidad marginal de la evidencia
P_positivo <- sum(conjunta)
cat("P(Positivo) =", round(P_positivo, 4), "\n")
## P(Positivo) = 0.103

Se suman las probabilidades conjuntas para obtener:

P(Positivo)

🧩 5. Probabilidades posteriores (Bayes)

# Paso 5: posteriors
posterior <- conjunta / P_positivo

Aplicamos Bayes:

P(Estado | Positivo)

🧩 6. Tabla completa

# Tabla completa
tabla <- data.frame(
  Estado      = estados,
  Prior       = prior,
  Verosimil   = likel,
  Conjunta    = conjunta,
  Posterior   = round(posterior, 4)
)
print(tabla)
##      Estado Prior Verosimil Conjunta Posterior
## 1    Cáncer  0.01     0.800  0.00800    0.0776
## 2 No Cáncer  0.99     0.096  0.09504    0.9224
cat("\n→ P(Cáncer | Positivo) =", round(posterior[1] * 100, 1), "%\n")
## 
## → P(Cáncer | Positivo) = 7.8 %
cat("→ Aunque la prueba es positiva, solo el",
    round(posterior[1] * 100, 1), "% tiene cáncer.\n")
## → Aunque la prueba es positiva, solo el 7.8 % tiene cáncer.
# Visualización: cómo cambia la posterior con distintas prevalencias
library(ggplot2)
prevalencias <- seq(0.001, 0.20, 0.001)
post_cancer <- sapply(prevalencias, function(p) {
  conj <- c(sensibilidad * p, falso_pos * (1 - p))
  conj[1] / sum(conj)
})

df_prev <- data.frame(prevalencia = prevalencias, posterior = post_cancer)

ggplot(df_prev, aes(x = prevalencia * 100, y = posterior * 100)) +
  geom_line(color = "#3a7fbd", linewidth = 1.2) +
  geom_point(data = data.frame(x = 1, y = posterior[1] * 100),
             aes(x = x, y = y), color = "#b0305a", size = 4) +
  annotate("text", x = 2, y = posterior[1] * 100,
           label = paste0("Prevalencia 1%\nP(Cáncer|+) = ",
                           round(posterior[1] * 100, 1), "%"),
           hjust = 0, color = "#b0305a", size = 3.5) +
  labs(title = "Efecto de la Prevalencia sobre el Valor Predictivo Positivo",
       subtitle = "Mamografía: Sensibilidad=80%, Tasa FP=9.6%",
       x = "Prevalencia (%)", y = "P(Cáncer | Positivo) (%)") +
  theme_minimal() +
  scale_x_continuous(labels = function(x) paste0(x, "%")) +
  scale_y_continuous(labels = function(x) paste0(x, "%"))

INTERPETACION

El gráfico evidencia que la probabilidad de tener cáncer dado un resultado positivo depende fuertemente de la prevalencia de la enfermedad. En poblaciones con baja prevalencia, incluso pruebas con buena sensibilidad pueden generar una alta proporción de falsos positivos, reduciendo el valor predictivo positivo. Por lo tanto, es fundamental considerar el contexto poblacional al interpretar resultados diagnósticos.