| UNIVERSIDAD DE EL SALVADOR FACULTAD DE CIENCIAS ECONÓMICAS ESCUELA DE ECONOMÍA ECONOMETRÍA |
Trabajo grupal: Grupo no. 1
Modelado de fenómenos económicos: una aplicación del Modelo Clásico de Regresión Lineal Múltiple en Factores de Riesgo en el Seguro de Gastos Médicos
Integrantes:
| Nombre | No. DUE |
|---|---|
| Delgado Cuellar, Giselle Abigail | DC24008 |
| López Ayala, Miguel Ángel | LA24003 |
| Morales Monzón, Vanessa María | MM24056 |
San Salvador, El Salvador
2026
El mercado de los seguros médicos opera bajo una constante incertidumbre financiera, donde la sostenibilidad de las pólizas de gastos médicos mayores depende de la capacidad de las firmas para predecir con exactitud la siniestralidad futura. Tradicionalmente, la fijación de las primas anuales se ha enfrentado al reto de la heterogeneidad de los usuarios, ya que los costos médicos individuales responden a una compleja interacción de condiciones biológicas, demográficas, de hábitos humanos y del entorno geográfico. Cuando una aseguradora carece de herramientas cuantitativas precisas para evaluar este riesgo, se expone a desequilibrios financieros críticos: la subestimación de las tarifas compromete su solvencia ante siniestros de alto costo, mientras que la sobreestimación reduce su competitividad en el mercado.
Para abordar esta problemática, el análisis económico y actuarial recurre a modelos teóricos de capital humano y demanda de salud, como el Modelo de Capital de Salud de Grossman (1972). Esta teoría postula que el cuerpo humano experimenta una tasa de depreciación biológica natural e irreversible con el paso de los años, lo que incrementa la propensión a enfermar y dispara la demanda de servicios médicos complejos. A este desgaste se suman factores exógenos vinculados al estilo de vida, como el tabaquismo activo o desequilibrios en el Índice de Masa Corporal provocados por la obesidad, así como el entorno macroambiental y la infraestructura de la región, que alteran la eficiencia y el costo de producción de los servicios debido a la oferta hospitalaria y los precios locales. Bajo este marco conceptual, la presente investigación desarrolla y valida un Modelo Clásico de Regresión Lineal Múltiple. Esta herramienta permite traducir la teoría en métricas cuantitativas concretas, analizando cómo influye cada factor en el logaritmo de los cargos médicos, incorporando además curvatura en la edad e interacciones relevantes entre variables de riesgo.
En el mercado de seguros médicos, la sostenibilidad financiera de las pólizas de gastos médicos mayores depende críticamente de la correcta estimación del riesgo de los asegurados. Las compañías de seguros deben establecer primas anuales que no solo resulten competitivas en el mercado, sino que también cubran de manera eficiente la materialización financiera de los riesgos de salud de sus beneficiarios, es decir, los cargos o costos médicos individuales facturados. Para lograr este equilibrio, es indispensable identificar y cuantificar con precisión los factores biológicos, conductuales y contextuales que incrementan dichos costos.
Actualmente, la compañía de seguros se enfrenta a la necesidad de ajustar sus primas anuales de forma precisa, evitando la subestimación del riesgo lo que generaría pérdidas financieras y comprometería la solvencia o la sobreestimación que causaría la pérdida de clientes. Por esa necesidad, debe ajustar sus primas anuales mediante la identificación precisa de los factores relacionados a la salud y la ubicación geográfica de los asegurados que incrementan el costo médico de manera desproporcionada, reconociendo que el riesgo epidemiológico y el costo de los servicios de salud varían significativamente entre las distintas regiones del país
¿Cómo puede una compañía de seguros ajustar sus primas anuales a partir de la identificación precisa de los factores de salud y las disparidades regionales que incrementan el costo médico de manera desproporcionada?
Desarrollar un modelo econométrico de estimación y pronóstico para determinar el costo médico individual en función de variables biológicas, demográficas, de estilo de vida y de ubicación geográfica, con el fin de proporcionar a la compañía de seguros una herramienta cuantitativa para el ajuste preciso de sus primas anuales, mitigando las pérdidas por subestimación del riesgo y la pérdida de competitividad por sobreestimación.
Formular la especificación matemática y la forma funcional del modelo econométrico, evaluando la linealidad en los parámetros entre la variable dependiente de costos médicos y los factores de riesgo biológicos, demográficos y de estilo de vida.
Validar el cumplimiento de los Supuestos del Modelo Clásico de Regresión Lineal Múltiple, para asegurar que los estimadores obtenidos sean eficientes, insesgados y consistentes.
Evaluar la capacidad de pronóstico y precisión del modelo, verificando la estabilidad del mismo para predecir escenarios de nuevos perfiles de asegurados.
La presente investigación se justifica por la necesidad imperativa de proveer a las compañías de seguros de herramientas analíticas precisas para la gestión y tarificación del riesgo en pólizas. En el dinámico mercado de seguros médicos, la sostenibilidad financiera y la competitividad comercial dependen críticamente de un equilibrio técnico del cálculo adecuado de las primas anuales de seguro. Por lo tanto, este estudio aborda de manera directa este dilema operativo al transformar la incertidumbre del riesgo en un modelo predictivo sustentable, transitando de un enfoque lineal aditivo tradicional hacia una especificación log-lineal no lineal que reconoce la verdadera complejidad de los costos de salud.
Por tanto, el estudio aporta valor mediante la correcta especificación, corrección y validación de un Modelo de Regresión Múltiple. La utilidad de este enfoque radica en su capacidad para aislar y medir el efecto de cada factor de riesgo a través de la transformación logarítmica de los costos médicos, la inclusión del efecto cuadrático de la edad y la incorporación de interacciones cruzadas que demuestran cómo el tabaquismo multiplica los riesgos del sobrepeso y del envejecimiento. El cumplimiento y la corrección de los supuestos estadísticos ante problemas de heterocedasticidad aseguran que los estimadores obtenidos sean eficientes, consistentes y seguros, lo que provee a la investigación de un alto rigor científico y de replicabilidad para ser usada por distintas empresas aseguradoras.
La modelación de los costos médicos individuales facturados, como variable dependiente continua, encuentra su principal sustento en la economía de la salud a través de la evolución del Modelo de Demanda de Salud de Grossman y la teoría generalizada del capital humano de Muurinen. El intercepto o constante del modelo representa el costo médico base o la siniestralidad mínima esperada cuando todas las covariables demográficas y de estilo de vida se encuentran en su nivel cero o de referencia; de este modo, se captura el gasto asistencial inercial no condicionado por los factores de riesgo analizados.
La inclusión de la edad del asegurado se fundamenta en la relación inversa existente entre la edad cronológica y el estado de salud, donde el envejecimiento actúa como un determinante biológico de modificaciones morfológicas y funcionales irreversibles (Universidad del Valle, 2016). Dentro de la teoría económica, esto se traduce en una tasa de depreciación del capital salud que aumenta de manera monótona con los años. Al desgastarse este capital de forma natural, el individuo se ve obligado a realizar mayores inversiones brutas para mitigar el deterioro; en el mercado asegurador, este fenómeno genera una mayor frecuencia de reclamaciones y, por ende, un incremento predecible en los costos facturados (Grossman, 1972; Universidad del Valle, 2016).
Sin embargo, la teoría contemporánea demostró que este desgaste no depende exclusivamente del tiempo cronológico, sino que se ve alterado exógenamente por los estilos de vida del asegurado (Muurinen, 1982). Es aquí donde variables como el Índice de Masa Corporal y la condición de tabaquismo adquieren relevancia macro y microeconómica. El tabaquismo modelado mediante una variable dicotómica y los indicadores asociados a la obesidad (como un IMC elevado) actúan como insumos destructivos o males dentro de la función de producción de salud, acelerando drásticamente la tasa de depreciación de dicho capital (Kim, 2025; Muurinen, 1982). Desde la perspectiva del riesgo actuarial, el tabaquismo y el sobrepeso provocan una pérdida de eficiencia biológica crónica. En consecuencia, los asegurados expuestos a estos factores requieren de forma sistemática una mayor densidad de servicios, consultas y hospitalizaciones para estabilizar su salud básica, registrando los niveles de gasto acumulado más altos del sistema al aislar otros factores socioculturales.
Por otra parte, la incorporación de la región de residencia del asegurado se sustenta en los determinantes ambientales y de mercado descritos en el modelo de Grossman (Grossman, 1972). Desde la perspectiva de la demanda, la ubicación geográfica actúa como un factor exógeno que altera los precios relativos de los insumos médicos y la disponibilidad de la infraestructura sanitaria (densidad de proveedores). Asimismo, las disparidades regionales influyen directamente en la productividad salarial y en el costo de oportunidad del tiempo que los individuos destinan a producir salud. En términos actuariales y de costos facturados, la variabilidad regional captura la heterogeneidad en los patrones de práctica médica, los costos de vida locales y el nivel de accesibilidad geográfica, lo que se traduce en diferencias sistemáticas en la frecuencia y severidad del gasto médico reportado entre distintas zonas geográficas.
Finalmente, el número de hijos o dependientes a cargo incorpora la dimensión de la dependencia demográfica dentro del hogar y su impacto en la restricción presupuestaria familiar (Abeldaño, 2017; OMS, 2010). Teóricamente, un mayor número de dependientes genera un efecto dilución de recursos, que atomiza el ingreso per cápita del hogar y desplaza el gasto en medicina preventiva hacia la subsistencia inmediata (Abeldaño, 2017; Sherri, 2012). Asimismo, produce un efecto contracción en la capacidad de ahorro, incrementando la vulnerabilidad financiera familiar ante shocks de enfermedad (Abeldaño, 2017). En el comportamiento del seguro, esto restringe la liquidez para afrontar deducibles o copagos elevados, modificando la estructura de las reclamaciones (fenómeno asociado al riesgo moral secundario y a la postergación de la atención) y alterando la severidad y oportunidad con la que se presentan los costos facturados a la aseguradora (OMS, 2010).
log(charges))Representa la materialización financiera del riesgo de salud del beneficiario. Se aplica la transformación logarítmica debido a que los costos médicos acumulados presentan una distribución altamente asimétrica hacia la derecha, característica de una estructura log-normal (Cawley et al., 2021; Xu et al., 2024). Esta modificación estabiliza la varianza de los residuos y corrige los problemas de heterocedasticidad propios de los datos de salud (Kim, 2025). Adicionalmente, bajo los fundamentos de la demanda de salud, permite interpretar los coeficientes directamente en términos de variaciones porcentuales o elasticidades, facilitando un diseño técnico y equitativo de las tarifas (Kaas et al., 2008).
1. Edad del beneficiario (age) De
acuerdo con el Modelo de Capital de Salud de Grossman (1972), aplicado
empíricamente por Universidad del Valle (2016) siguiendo el marco
analítico de Tovar Cuevas y Arias Arbeláez (2016), el envejecimiento
biológico acelera de forma natural e irreversible la tasa de
depreciación del stock de salud (especialmente después de los 30 años).
Empíricamente, se demuestra que cada año adicional reduce
significativamente la probabilidad de gozar de una salud óptima
(disminución de 0.003 en salud “muy buena” y 0.004 en “buena”), elevando
la propensión a caer en estados “regular” o “mala” (Universidad del
Valle, 2016). Esta pérdida de capital de salud dispara la demanda de
servicios médicos complejos y, por consecuencia, los costos facturados
(charges). Al ser una variable continua, permite capturar
el desgaste biológico acumulativo paso a paso, facilitando la
estructuración de primas progresivas por cada año que aumenta el riesgo
actuarial.
2. Edad del beneficiario al Cuadrado
(I(age^2)) Su inclusión se justifica econométrica
y actuarialmente para modelar la estructura cóncava del ciclo de vida en
el gasto sanitario, demostrando que la relación entre la edad y los
costos médicos no es una línea recta que sube indefinidamente a la misma
velocidad (Zweifel et al., 2009). En la formulación log-lineal, un
parámetro negativo refleja una desaceleración marginal. Esto significa
que, si bien el gasto absoluto sigue aumentando por el desgaste
biológico (Grossman, 1972), la tasa porcentual a la que crece tiende a
estabilizarse sutilmente en las etapas más avanzadas de la vejez (Tovar
Cuevas y Arias Arbeláez, 2016; Zweifel et al., 2009). Ignorarlo
obligaría al modelo a asumir que el costo se dispara exponencialmente a
tasas iguales a los 25 que a los 65 años, sobreestimando las primas de
los adultos mayores.
3. Índice de Masa Corporal (bmi)
Constituye el indicador estándar universal para diagnosticar el
sobrepeso y la obesidad, condiciones asociadas al desarrollo de
patologías metabólicas y crónicas como la diabetes tipo 2 y la
hipertensión arterial (Cawley et al., 2021). Clínicamente, la obesidad
severa eleva los gastos médicos de manera drástica, alcanzando
incrementos de hasta un 26.9% en hombres y un 46.5% en mujeres (Cawley
et al., 2021; Kim, 2025). Conservar el IMC como variable cuantitativa
continua evita la pérdida de información estadística y previene el
“sesgo de frontera” derivado de agrupar prematuramente en rangos
fijos.
4. Número de hijos/dependientes
(children) Variable con amplio respaldo empírico.
Investigaciones sobre el gasto en salud de los hogares determinaron que
con el incremento de un integrante menor de 14 años, el gasto aumenta en
2 puntos porcentuales, dado que los niños en etapas tempranas requieren
mayor atención médica (Abeldaño, 2017, como se citó en Báscolo et al.,
2020). Los dependientes aumentan el costo de la póliza porque suman
riesgos individuales al contrato, elevando la probabilidad de que la
aseguradora incurra en costos por consultas, tratamientos o emergencias
(Báscolo et al., 2020).
5. Fumador (smoker) El tabaquismo
es un factor de riesgo crítico que incrementa la probabilidad de
desarrollar enfermedades crónicas de alta siniestralidad, tales como
cáncer, afecciones cardiovasculares y trastornos respiratorios (Xu et
al., 2024). Desde una perspectiva financiera, se estima que los
fumadores activos generan, en promedio, entre un 13.8% y un 18.6% más de
costos médicos anuales en comparación con los no fumadores (Kim, 2025;
Xu et al., 2024). La elección de una variable dicotómica (0 = No
fumador, 1 = Fumador) responde a la necesidad de simplificar la
recolección de datos y evitar el sesgo de deseabilidad social o de
memoria.
Para capturar la verdadera complejidad del riesgo y romper con el supuesto tradicional de que los factores operan de forma aislada e independiente, se incorporaron los términos de interacción en el orden secuencial del modelo:
6. Interacción Edad y Fumador
(age:smoker) El impacto del tabaquismo sobre el
gasto médico total no es estático a lo largo del tiempo, sino que
interactúa de manera dinámica con el ciclo de vida y el envejecimiento
del asegurado. Esta variable mide cómo el desgaste biológico natural se
acelera de forma diferenciada según la exposición al tabaco. El sustento
empírico radica en que el riesgo de mortalidad y el desarrollo de
enfermedades cardiovasculares aumentan de forma acumulativa por cada año
de precocidad en el consumo, estimándose un incremento del 4% en el
riesgo de mortalidad general por cada año que se adelanta este hábito
(Fa-Binefa et al., 2019). Clínicamente, el sistema cardiovascular
presenta una sensibilidad crítica a los efectos tóxicos del tabaco a lo
largo del desarrollo, lo que duplica el riesgo de sufrir enfermedades
coronarias en comparación con los no fumadores. La inclusión de este
efecto multiplicativo permite a la firma de seguros ajustar las primas
de manera precisa y penalizar el riesgo financiero acumulado a medida
que el cliente fumador avanza en edad.
7. Interacción IMC y fumador
(bmi:smoker) Clínicamente, los riesgos derivados
de poseer un IMC elevado no se suman de manera simple al hábito de
fumar, sino que operan bajo un efecto potenciado y simultáneo. Mientras
que la obesidad se asocia con el síndrome metabólico y la hipertensión,
el consumo crónico de tabaco intensifica el estrés oxidativo y la
disfunción endotelial, alterando además la utilización de la glucosa y
propiciando la resistencia a la insulina. Esta compleja interacción
biológica demuestra que modelar ambos factores por separado subestimaría
el verdadero riesgo, ya que ambas condiciones coexisten y generan de
forma conjunta costos sustanciales debido al aumento de
hospitalizaciones. Este término captura dicho efecto multiplicativo no
lineal, permitiendo calcular una penalización financiera compuesta para
los asegurados que acumulan ambos riesgos simultáneamente (Kumar et al.,
2024).
8. Región de residencia (region)
Bajo el modelo de Grossman (1972), la ubicación actúa como un factor del
entorno que modifica la eficiencia en la producción de salud y los
precios de los servicios debido a diferencias climáticas, de salubridad
e infraestructura (Tovar Cuevas y Arias Arbeláez, 2016). Empíricamente,
residir en determinadas zonas altera la probabilidad de experimentar
variaciones en el gasto sanitario debido a las desigualdades en la
oferta hospitalaria y los perfiles epidemiológicos locales,
consolidándose como un determinantec rítico para controlar la
heterogeneidad geográfica del mercado (Grossman, 1972; Tovar Cuevas y
Arias Arbeláez, 2016).
Para el desarrollo del presente análisis empírico, se utilizó un conjunto de datos estandarizado de la industria de seguros médicos privados. Este dataset consta de variables claves que son fundamentales para comprender los factores de riesgo que influyen en el costo de seguros médicos.
## # A tibble: 10 × 7
## age sex bmi children smoker region charges
## <dbl> <fct> <dbl> <dbl> <fct> <fct> <dbl>
## 1 19 female 27.9 0 yes southwest 16885.
## 2 18 male 33.8 1 no southeast 1726.
## 3 28 male 33 3 no southeast 4449.
## 4 33 male 22.7 0 no northwest 21984.
## 5 32 male 28.9 0 no northwest 3867.
## 6 31 female 25.7 0 no southeast 3757.
## 7 46 female 33.4 1 no southeast 8241.
## 8 37 female 27.7 3 no northwest 7282.
## 9 37 male 29.8 2 no northeast 6406.
## 10 60 female 25.8 0 no northwest 28923.
El dataset contiene 1,338 observaciones de beneficiarios de seguros
médicos en Estados Unidos. Las variables utilizadas son: edad
(age), IMC (bmi), número de hijos
(children), condición de fumador (smoker),
región geográfica (region) y cargos médicos anuales
(charges). La variable sex no se incluye por
no constituir un factor de riesgo actuarial significativo. La variable
dependiente se transforma logarítmicamente dado que los gastos médicos
presentan distribución log-normal.
El conjunto de datos analizado se clasifica de la siguiente manera de acuerdo con su naturaleza y escala de medición:
Variables numéricas (cuantitativas):
Edad (\(\text{age}\)): Variable continua (expresada en años enteros) que representa la edad biológica de los beneficiarios principales del seguro.
Índice de Masa Corporal (\(\text{bmi}\)): Variable continua que mide la relación peso-talla, clave para evaluar el estado de salud física general y el riesgo metabólico.
Número de hijos/dependientes (\(\text{children}\)): Variable discreta que indica la cantidad de personas a cargo cubiertas bajo la misma póliza de seguro médico.
Cargos/Costos (\(\text{charges}\)): Variable continua que representa los costos médicos individuales facturados por la aseguradora. Esta constituye la variable dependiente e interés central del estudio.
Variables categorizadas (cualitativas):
Género (\(\text{sex}\)): Variable categórica nominal que identifica el sexo biológico del asegurado registrado en la póliza (\(\text{female}\) / \(\text{male}\)).
Tabaquismo (\(\text{smoker}\)): Variable categórica nominal binaria (\(\text{yes}\) / \(\text{no}\)) que determina si el asegurado consume tabaco habitualmente de forma activa.
Región (\(\text{region}\)): Variable categórica nominal que indica la zona residencial del beneficiario en EE. UU., dividida en cuatro áreas geográficas (\(\text{southwest}\), \(\text{southeast}\), \(\text{northwest}\) y \(\text{northeast}\)).
Restricciones esperadas en los parámetros:
| Parámetro | Signo esperado | Justificación teórica |
|---|---|---|
| β1 (age) | > 0 | El riesgo de salud y la demanda médica aumentan con la edad. |
| β2 (age2) | < 0 | La tasa de incremento del costo se desacelera a largo plazo (concavidad). |
| β3 (bmi) | > 0 | Mayor IMC implica mayor riesgo metabólico basal en no fumadores. |
| β4 (children) | > 0 | Más dependientes en la póliza amplían la cobertura y el costo total. |
| β5 (smoker) | > 0 | El tabaquismo eleva drásticamente el riesgo de enfermedades crónicas. |
| β6 (age × smoker) | < 0 | El impacto por tabaquismo es alto desde la juventud; el diferencial disminuye en la vejez. |
| β7 (smoker × bmi) | > 0 | Efecto sinérgico: el tabaquismo amplifica exponencialmente el riesgo por alto IMC. |
| β8, 9, 10 (region) | ≠ 0 | Las regiones difieren en costo de vida, infraestructura y acceso médico. |
El modelo matemático postula una relación funcional determinista donde los costos médicos individuales están condicionados por los factores de riesgo biológicos, demográficos y de estilo de vida. Siguiendo el orden establecido, la relación exacta se expresa de la siguiente forma:
\[\ln(\text{charges}) = \beta_0 + \beta_1(\text{age}) + \beta_2(\text{age}^2) + \beta_3(\text{bmi}) + \beta_4(\text{children}) + \beta_5(\text{smokeryes}) + \beta_6(\text{age} \times \text{smokeryes}) + \] \[\beta_7(\text{smokeryes} \times \text{bmi}) + \beta_8(\text{regionsoutheast}) + \beta_9(\text{regionsouthwest}) + \beta_{10}(\text{regionnorthwest})\]
\(\beta_1\) (\(\text{age}\)): Edad cronológica del asegurado (en años). Mide el efecto lineal del envejecimiento en el costo de salud.
\(\beta_2\) (\(\text{age}^2\)): Término cuadrático de la edad. Captura la posible no linealidad o curvatura en la tasa de depreciación de la salud.
\(\beta_3\) (\(\text{bmi}\)): Índice de Masa Corporal (IMC). Mide el impacto base de la composición corporal sobre el gasto médico.
\(\beta_4\) (\(\text{children}\)): Número de hijos o dependientes económicos a cargo del asegurado en la póliza.
\(\beta_5\) (\(\text{smokeryes}\)): Variable binaria (dummy). Toma el valor de 1 si el asegurado fuma y 0 en caso contrario.
\(\beta_6\) (\(\text{age} \times \text{smokeryes}\)): Término de interacción que evalúa cómo se altera el impacto del tabaquismo conforme avanza la edad del asegurado.
\(\beta_7\) (\(\text{smokeryes} \times \text{bmi}\)): Término de interacción que captura el efecto multiplicativo y combinado de sufrir de un IMC alto siendo simultáneamente fumador.
\(\beta_8\) (\(\text{regionsoutheast}\)): Variable binaria (dummy); vale 1 si vive en la región Sureste, 0 si no.
\(\beta_9\) (\(\text{regionsouthwest}\)): Variable binaria (dummy); vale 1 si vive en la región Suroeste, 0 si no.
\(\beta_{10}\) (\(\text{regionnorthwest}\)): Variable binaria (dummy); vale 1 si vive en la región Noroeste, 0 si no.
Dado que el comportamiento de los costos médicos no es enteramente determinista y existen variables omitidas e ignoradas que pueden influir en Y, por eso se añade al modelo el término de perturbación estocástica . Esto transforma la relación matemática en un modelo probabilístico apto para estimación por Mínimos Cuadrados Ordinarios (MCO):
modelo_seguro <- lm(formula = log(charges) ~ age + I(age^2) + bmi + children + smoker +
region + smoker:bmi + age:smoker, data = insurance)
extract_eq(modelo_seguro,wrap = TRUE) \[ \begin{aligned} \operatorname{log(charges)} &= \alpha + \beta_{1}(\operatorname{age}) + \beta_{2}(\operatorname{age\texttt{^}2}) + \beta_{3}(\operatorname{bmi})\ + \\ &\quad \beta_{4}(\operatorname{children}) + \beta_{5}(\operatorname{smoker}_{\operatorname{yes}}) + \beta_{6}(\operatorname{region}_{\operatorname{northwest}}) + \beta_{7}(\operatorname{region}_{\operatorname{southeast}})\ + \\ &\quad \beta_{8}(\operatorname{region}_{\operatorname{southwest}}) + \beta_{9}(\operatorname{bmi} \times \operatorname{smoker}_{\operatorname{yes}}) + \beta_{10}(\operatorname{age} \times \operatorname{smoker}_{\operatorname{yes}}) + \epsilon \end{aligned} \]
stargazer(modelo_seguro, type = "html",
title = "Resultados del Modelo OLS — Seguro de Gastos Médicos",
dep.var.labels = "log(charges)")| Dependent variable: | |
| log(charges) | |
| age | 0.060*** |
| (0.005) | |
| I(age2) | -0.0002*** |
| (0.0001) | |
| bmi | 0.001 |
| (0.002) | |
| children | 0.096*** |
| (0.009) | |
| smokeryes | 1.291*** |
| (0.146) | |
| regionnorthwest | -0.062** |
| (0.030) | |
| regionsoutheast | -0.145*** |
| (0.031) | |
| regionsouthwest | -0.150*** |
| (0.031) | |
| bmi:smokeryes | 0.050*** |
| (0.004) | |
| age:smokeryes | -0.033*** |
| (0.002) | |
| Constant | 6.785*** |
| (0.112) | |
| Observations | 1,337 |
| R2 | 0.824 |
| Adjusted R2 | 0.823 |
| Residual Std. Error | 0.387 (df = 1326) |
| F Statistic | 621.166*** (df = 10; 1326) |
| Note: | p<0.1; p<0.05; p<0.01 |
Especificación Estadística
Desde la perspectiva del Modelo de Regresión Lineal Clásico, se asume que el término de error cumple en primera instancia con los supuestos tradicionales: esperanza matemática nula (los errores se compensan en promedio), varianza constante (homocedasticidad), ausencia de autocorrelación (los errores de un asegurado no afectan a otro) y normalidad para fines de inferencia.
La inclusión de variables clave se justifica de la siguiente manera: Edad al cuadrado: Introduce una estructura curva para evaluar si el impacto de la edad sobre el gasto médico se desacelera o se acelera a medida que el asegurado envejece. Interacciones (IMC con Fumador y Edad con Fumador): El modelo reconoce que el tabaquismo no actúa de forma aislada, sino que puede amplificar el riesgo asociado a un IMC alto o alterar el patrón natural de envejecimiento biológico del asegurado.
A continuación, se establecen las hipótesis estadísticas para la evaluación de la significancia individual y conjunta de cada parámetro con el signo esperado y con la variable dependiente logarítmica.
Respecto a la edad (\(\beta_1\))
Respecto a la edad al cuadrado (\(\beta_2\))
Respecto al Índice de Masa Corporal (\(\beta_3\))
Respecto al número de hijos / Dependientes (\(\beta_4\))
Respecto al tabaquismo (\(\beta_5\))
Respecto a la interacción Edad y Tabaquismo (\(\beta_6\))
Respecto a la interacción IMC y Tabaquismo (\(\beta_7\))
Respecto a las regiones geográficas
Densidad empírica vs. teórica: La distribución real de los residuos muestra una asimetría pronunciada hacia la derecha (cola larga positiva) y una concentración excesiva alrededor de cero, incompatibles con la curva normal teórica.
Q-Q Plot: Los puntos se desvían de la línea diagonal de 45° especialmente en los extremos, confirmando que la distribución de los residuos es leptocúrtica y asimétrica.
CDF empírica vs. teórica: La función de distribución acumulada observada no sigue el patrón suave de la normal teórica; se aprecian saltos y desviaciones notorias en la zona central y en las colas.
P-P Plot: Los puntos se alejan marcadamente de la diagonal, mostrando una mayor separación en los extremos, lo que refuerza la presencia de colas pesadas no normales.
Impacto en la Estimación: A pesar de la falta de normalidad, gracias al gran volumen de datos disponibles (más de 1,300 observaciones), los coeficientes calculados por Mínimos Cuadrados Ordinarios (MCO) continúan siendo válidos, confiables e insesgados.
\(H_0 : \varepsilon \sim N(0, \sigma^2)\) “Los Residuos siguen una distribución normal con media cero y varianza constante”
\(H_A : \varepsilon \not\sim N(0, \sigma^2)\) “Los Residuos no siguen una distribución normal con media cero y varianza constante”
options(scipen = 99)
# Calculo de W
salida_SW <- shapiro.test(modelo_seguro$residuals)
print(salida_SW)##
## Shapiro-Wilk normality test
##
## data: modelo_seguro$residuals
## W = 0.64561, p-value < 0.00000000000000022
## [1] 14.21548
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: modelo_seguro$residuals
## D = 0.29875, p-value < 0.00000000000000022
library(tseries)
options(scipen = 99)
salida_JB<-jarque.bera.test(modelo_seguro$residuals)
salida_JB##
## Jarque Bera Test
##
## data: modelo_seguro$residuals
## X-squared = 8698.2, df = 2, p-value < 0.00000000000000022
Interpretación Normalidad de los Residuos
Dado que en todos los casos el p-value es extremadamente pequeño, significativamente menor que el nivel de significancia estándar ( 𝛼= 0.05), se rechaza categóricamente la hipótesis nula (\(H_0\)). El estadístico W de Shapiro-Wilk y el estadístico D de Lilliefors revelan una discrepancia severa entre la distribución empírica de los residuos y la distribución teórica normal.
library(fastGraph)
alpha_sig<-0.05
JB<-salida_JB$statistic
gl<-salida_JB$parameter
VC<-qchisq(1-alpha_sig,gl,lower.tail = TRUE)
shadeDist(JB,ddist = "dchisq",
parm1 = gl,
lower.tail = FALSE,xmin=0,
sub=paste("VC:",round(VC,2)," ","JB:",round(JB,2)))Nota: El valor de JB es tan grande que la gráfica se refleja de esta manera. No quita la interpetación de no normalidad.
\(\kappa(\mathbf{x}) = \sqrt{\frac{\lambda_{max}}{\lambda_{min}}}\)
Interpretación del Índice de Condición:
Si \(\kappa(\mathbf{x}) \leq 20\), la multicolinealidad es leve y no representa un problema significativo.
Cuando \(20 < \kappa(\mathbf{x}) < 30\), se considera que la multicolinealidad es de nivel moderado.
Si \(\kappa(\mathbf{x}) \geq 30\), la multicolinealidad es severa y puede comprometer los resultados del modelo.
##
## Call:
## omcdiag(mod = mod, Inter = TRUE, detr = detr, red = red, conf = conf,
## theil = theil, cn = cn)
##
##
## Overall Multicollinearity Diagnostics
##
## MC Results detection
## Determinant |X'X|: 0.0000 1
## Farrar Chi-Square: 13247.8502 1
## Red Indicator: 0.3040 0
## Sum of Lambda Inverse: 168.2166 1
## Theil's Method: -1.1826 0
## Condition Number: 62.5201 1
##
## 1 --> COLLINEARITY is detected by the test
## 0 --> COLLINEARITY is not detected by the test
\(H_0 : R \sim I\chi^2_{FG} < VC \text{ o } p > \alpha\)
\(H_A : R \not\sim I\chi^2_{FG} \ge VC \text{ o } p \le \alpha\).
library(psych)
# Calcular matrix X
X_mat<-model.matrix(modelo_seguro)
# Prueba
FG_test<-cortest.bartlett(X_mat[,-1])
print(FG_test, digits = 22)## $chisq
## [1] 13247.85019895262485079
##
## $p.value
## [1] 0
##
## $df
## [1] 45
Nota: El P-Value están cercano a “0” que no aparece, pero no es “0
Interpretación — Multicolinealidad: Como es tan pequeño el p-value() < nivel de significancia(0.05). Se rechaza hipotesis nula, por lo tanto hay evidencia de colinealidad en los regresores.
VIF Interpretación Igual a 1 - Sin multicolinealidad Menor a 5 - Baja o moderada, generalmente aceptable Menor a 10 - Posible problema de multicolinealidad Mayor a 10 - Problema serio de multicolinealidad Nota: El criterio puede cambiar dependiendo del investigador.
## # Check for Multicollinearity
##
## Low Correlation
##
## Term VIF VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
## bmi 1.39 [ 1.31, 1.50] 1.18 0.72 [0.67, 0.76]
## children 1.10 [ 1.05, 1.19] 1.05 0.91 [0.84, 0.95]
## region 1.10 [ 1.06, 1.19] 1.02 0.91 [0.84, 0.95]
##
## Moderate Correlation
##
## Term VIF VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
## age:smoker 8.98 [ 8.13, 9.93] 3.00 0.11 [0.10, 0.12]
##
## High Correlation
##
## Term VIF VIF 95% CI adj. VIF Tolerance Tolerance 95% CI
## age 47.82 [43.06, 53.12] 6.92 0.02 [0.02, 0.02]
## I(age^2) 47.56 [42.83, 52.83] 6.90 0.02 [0.02, 0.02]
## smoker 31.05 [27.98, 34.47] 5.57 0.03 [0.03, 0.04]
## bmi:smoker 25.60 [23.08, 28.42] 5.06 0.04 [0.04, 0.04]
Evaluación y diagnóstico de la presencia de multicolinealidad Aunque las tres pruebas globales (índice de condición, Farrar-Glauber y VIF) detectan multicolinealidad significativa, el análisis desagregado por VIF matiza este resultado: la colinealidad se concentra en age (47.83), I(age²) (47.57), smoker (31.05) y bmi:smoker (25.61), mientras que bmi, children y region permanecen libres de ella. Esto indica que la multicolinealidad es de naturaleza estructural, inducida por los términos cuadráticos e interacciones del modelo, y no por redundancia real entre las variables de base.
\(\hat{\delta}^2_u = \delta_0 + \delta_1 x_1 + \delta_2 x_2 + \ldots + \delta_k x_k + \alpha_2 x_1^2 + \alpha_2 x_2^2 \ldots + \alpha_k x_k^2 + \theta_1 x_1 x_2 + \theta_1 x_1 x_3 + \theta_k C2 \alpha_i x_j\)
Hipótesis
\(H_0\): \(\delta_1 = \delta_2 = \ldots = \delta_k = \alpha_1 = \alpha_2 = \ldots = \alpha_k = \theta_1 = \theta_2 = \ldots = \theta_k C_2 = 0\)
Existe evidencia estadística de que los residuos son homocedásticos (la varianza del error es constante).
\(H_1\): \(\delta_1 = \delta_2 = \ldots = \delta_k = \alpha_1 = \alpha_2 = \ldots = \alpha_k = \theta_1 = \theta_2 = \ldots = \theta_k C_2 \neq 0\)
library(lmtest)
options(scipen = 99) # Evitar notación científica en los resultados
# Ejecutar la prueba de White para el nuevo modelo
PWhite <- bptest(
modelo_seguro,
~ I(age^2) + I(bmi^2) + I(children^2) + age * bmi + age * children + age * smoker
+ age * region + bmi * children + bmi * smoker
+ bmi * region + children * smoker + children * region + smoker * region, data = insurance)
# Mostrar los resultados
print(PWhite)##
## studentized Breusch-Pagan test
##
## data: modelo_seguro
## BP = 95.528, df = 28, p-value = 0.000000002655
## Usando Libreraria Skedastic (Otra alternativa)
library(skedastic)
skedastic::white(modelo_seguro, interactions = FALSE) ## # A tibble: 1 × 5
## statistic p.value parameter method alternative
## <dbl> <dbl> <dbl> <chr> <chr>
## 1 89.2 1.02e-10 20 White's Test greater
Interpretación — homocedasticidad: Como el p-value < nivel de significancia (0.05). Se rechaza la hipótesis nula; por lo tanto, existe evidencia estadística de la presencia de heterocedasticidad en la varianza de los residuos.
Resultados e interpretación de la prueba de heterocedasticidad de White.
Con los resultados obtenidos se puede afirmar que existe evidencia estadística de la presencia de heterocedasticidad en la varianza de los residuos. Debido a que los errores estándar quedan distorsionados, los estadísticos de prueba (t, F y el de multiplicador de Lagrange LM) dejan de seguir sus distribuciones teóricas originales, invalidando por completo los p-values y los intervalos de confianza obtenidos. El incumplimiento de este supuesto puede desencadenar estimaciones ineficientes de los coeficientes de regresión y decisiones de pruebas de hipótesis que no son válidas.
Se asume que los residuos presentan la siguiente estructura:
\(u_i = \rho u_{i-1} + v_i\)
\(H_0 : \rho = 0\)
No existe autocorrelación de primer orden en los residuos del modelo estimado
\(H_1 : \rho \neq 0\)
Se detecta presencia de autocorrelación de primer orden en los residuos del modelo estimado
##
## Durbin-Watson test
##
## data: modelo_seguro
## DW = 1.9995, p-value = 0.9918
## alternative hypothesis: true autocorrelation is not 0
## lag Autocorrelation D-W Statistic p-value
## 1 0.0002532195 1.999482 0.896
## Alternative hypothesis: rho != 0
Interpretación — Autocorrelación: Como el p-value es mayor al nivel de significancia (0.05). No se rechaza la hipótesis nula, lo que indica que no existe evidencia estadística de la presencia de autocorrelación de primer orden en los residuos del modelo estimado.
\(u_j = \rho_1 u_{i-1} + \rho_2 u_{i-2} + \ldots + \rho_m u_{i-m} + u_j\)
\(H_0: \rho_1 = \rho_2 = \rho_3 = \ldots = \rho_m = 0\)
Los residuos del modelo no presentan dependencia entre sí y carecen de autocorrelación hasta el orden \(m\).
\(H_1: \rho_1 = \rho_2 = \rho_3 = \ldots = \rho_m \neq 0\)
Los residuos del modelo presentan dependencia entre sí y exhiben autocorrelación hasta el orden \(m\).
Prueba de Breusch-Godfrey de segundo orden
##
## Breusch-Godfrey test for serial correlation of order up to 2
##
## data: modelo_seguro
## LM test = 0.15246, df = 2, p-value = 0.9266
Interpretación — Autocorrelación: Como p-value > nivel de significancia (0.05), no se rechaza la hipótesis nula; por lo tanto, puede concluirse que los residuos del modelo no siguen autocorrelación de orden “2”.
Prueba de Breusch-Godfrey de primer orden
##
## Breusch-Godfrey test for serial correlation of order up to 1
##
## data: modelo_seguro
## LM test = 0.000086087, df = 1, p-value = 0.9926
Interpretación — Autocorrelación: Como p-value > nivel de significancia (0.05), no se rechaza la hipótesis nula; por lo tanto, puede concluirse que los residuos del modelo no siguen autocorrelación de orden “1”.
# Extraemos los residuos de tu modelo
residuos <- residuals(modelo_seguro)
# Graficamos con ZOOM
acf(residuos,
lag.max = 5, # Zoom en X: Muestra solo hasta el lag 5
ylim = c(-0.2, 0.2), # Zoom en Y: Corta el gráfico entre -0.2 y 0.2
main = "Correlograma de los Residuos",
xlab = "Lag",
ylab = "ACF")Interpretación — Autocorrelación: Al mirar la gráfica, ninguna de las líneas negras (del 1 al 5) se salga de las líneas punteadas azules. Como todas se quedan guardadas ahí dentro, significa que los errores del modelo son completamente aleatorios y no dependen unos de otros.
Análisis de las pruebas de Durbin-Watson y Multiplicador de Lagrange para verificar estructuras
A partir de los resultados obtenidos mediante las pruebas estadísticas y el análisis visual, se concluye de forma contundente que los residuos del modelo (modelo seguro) no presentan problemas de autocorrelación de primer orden, ni de segundo orden y, por lo tanto, cumplen satisfactoriamente con el supuesto de independencia. La prueba analítica (Breusch-Godfrey) y la herramienta gráfica (ACF) asegura que los errores del modelo son independientes (ruido blanco). Esto valida la consistencia del modelo de regresión lineal y garantiza que las estimaciones e inferencias realizadas a partir de él son confiables.
Si vemos los resultados obtenidos anteriormente la prueba de Breusch-Pagan como la prueba de White rechazan contundentemente la hipótesis nula de homocedasticidad, confirmando que la varianza de los errores no es constante a lo largo de las observaciones. En cambio, las pruebas de autocorrelación Durbin-Watson y Breusch-Godfrey de orden 1 y de orden 2 no encuentran evidencia de dependencia serial en los residuos. En conclusión, hay presencia de heterocedasticidad, pero no de autocorrelación; en este caso se recomienda usar un estimador HC (uso de HC0) se corrige exactamente el problema que se detectó (heterocedasticidad) y no se introduce una corrección para un problema que las pruebas descartan (autocorrelación).
# ── Modelo sin Corregir ─────────────────────────────────────────────────
options(scipen = 99)
coeftest(modelo_seguro)##
## t test of coefficients:
##
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 6.784789160 0.111942050 60.6098 < 0.00000000000000022 ***
## age 0.059710083 0.005210282 11.4600 < 0.00000000000000022 ***
## I(age^2) -0.000228333 0.000064835 -3.5217 0.0004433 ***
## bmi 0.001227142 0.002047663 0.5993 0.5490827
## children 0.095788682 0.009213641 10.3964 < 0.00000000000000022 ***
## smokeryes 1.291126996 0.146019103 8.8422 < 0.00000000000000022 ***
## regionnorthwest -0.062170289 0.030420761 -2.0437 0.0411825 *
## regionsoutheast -0.144660557 0.030562474 -4.7333 0.0000024461 ***
## regionsouthwest -0.150492497 0.030512460 -4.9322 0.0000009162 ***
## bmi:smokeryes 0.050292949 0.004207783 11.9524 < 0.00000000000000022 ***
## age:smokeryes -0.033347866 0.001890211 -17.6424 < 0.00000000000000022 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# ── Modelo Corregido con HC0 ─────────────────────────────────────────────────
options(scipen = 99)
# Justificación: Se detectó heterocedasticidad (White: p < 0.001) pero
# NO autocorrelación (DW: p = 0.97; BG orden 2: p = 0.91).
# Por tanto se aplica HC0 (White robusto) y NO un estimador HAC.
library(lmtest)
library(sandwich)
estimacion_omega <- vcovHC(modelo_seguro, type = "HC0") # Solo heterocedasticidad
coeftest(modelo_seguro, vcov. = estimacion_omega)##
## t test of coefficients:
##
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 6.784789160 0.130706882 51.9084 < 0.00000000000000022 ***
## age 0.059710083 0.005787717 10.3167 < 0.00000000000000022 ***
## I(age^2) -0.000228333 0.000065254 -3.4991 0.0004823 ***
## bmi 0.001227142 0.002074533 0.5915 0.5542684
## children 0.095788682 0.008725474 10.9780 < 0.00000000000000022 ***
## smokeryes 1.291126996 0.107278748 12.0353 < 0.00000000000000022 ***
## regionnorthwest -0.062170289 0.031573194 -1.9691 0.0491513 *
## regionsoutheast -0.144660557 0.032561333 -4.4427 0.0000096230 ***
## regionsouthwest -0.150492497 0.030073479 -5.0042 0.0000006364 ***
## bmi:smokeryes 0.050292949 0.003098630 16.2307 < 0.00000000000000022 ***
## age:smokeryes -0.033347866 0.001430990 -23.3041 < 0.00000000000000022 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
library(car)
linearHypothesis(modelo_seguro,
c("age = 0", "I(age^2) = 0", "bmi = 0", "children = 0",
"smokeryes = 0", "regionnorthwest = 0", "regionsoutheast = 0",
"regionsouthwest = 0", "bmi:smokeryes = 0", "age:smokeryes = 0"),
vcov. = estimacion_omega,
test = "F")##
## Linear hypothesis test:
## age = 0
## I(age^2) = 0
## bmi = 0
## children = 0
## smokeryes = 0
## regionnorthwest = 0
## regionsoutheast = 0
## regionsouthwest = 0
## bmi:smokeryes = 0
## age:smokeryes = 0
##
## Model 1: restricted model
## Model 2: log(charges) ~ age + I(age^2) + bmi + children + smoker + region +
## smoker:bmi + age:smoker
##
## Note: Coefficient covariance matrix supplied.
##
## Res.Df Df F Pr(>F)
## 1 1336
## 2 1326 10 779.25 < 0.00000000000000022 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
La prueba F conjunta, recalculada con la matriz de varianzas-covarianzas robusta, arroja un estadístico F = 779.25 con un p-value < 0.00000000000000022, lo que permite rechazar contundentemente la hipótesis nula de que todos los coeficientes evaluados son simultáneamente iguales a cero. Esto demuestra que el modelo en su conjunto es altamente significativo incluso después de corregir por heterocedasticidad, confirmando que las variables explicativas tienen un poder explicativo real sobre log(charges) y que la significancia conjunta detectada inicialmente no era un artefacto de errores estándar mal calculados.
# ── Tabla comparativa con Stargazer ─────────────────────────────────────────
options(scipen = 99)
library(robustbase)
library(stargazer)
modelo_seguro_robust <- lmrob(
log(charges) ~ age + I(age^2) + bmi + children + smoker + region +
smoker:bmi + age:smoker,
data = insurance
)
stargazer(modelo_seguro, modelo_seguro_robust,
type = "html",
title = "Comparativa: MCO vs Mínimos Cuadrados Robustos (MM-estimador)")| Dependent variable: | ||
| log(charges) | ||
| OLS | MM-type | |
| linear | ||
| (1) | (2) | |
| age | 0.060*** | 0.070*** |
| (0.005) | (0.003) | |
| I(age2) | -0.0002*** | -0.0003*** |
| (0.0001) | (0.00003) | |
| bmi | 0.001 | 0.00001 |
| (0.002) | (0.0005) | |
| children | 0.096*** | 0.085*** |
| (0.009) | (0.003) | |
| smokeryes | 1.291*** | 1.100*** |
| (0.146) | (0.088) | |
| regionnorthwest | -0.062** | -0.036*** |
| (0.030) | (0.008) | |
| regionsoutheast | -0.145*** | -0.095*** |
| (0.031) | (0.009) | |
| regionsouthwest | -0.150*** | -0.086*** |
| (0.031) | (0.008) | |
| bmi:smokeryes | 0.050*** | 0.057*** |
| (0.004) | (0.003) | |
| age:smokeryes | -0.033*** | -0.033*** |
| (0.002) | (0.002) | |
| Constant | 6.785*** | 6.462*** |
| (0.112) | (0.064) | |
| Observations | 1,337 | 1,337 |
| R2 | 0.824 | 0.987 |
| Adjusted R2 | 0.823 | 0.987 |
| Residual Std. Error (df = 1326) | 0.387 | 0.086 |
| F Statistic | 621.166*** (df = 10; 1326) | |
| Note: | p<0.1; p<0.05; p<0.01 | |
Inferencia Robusta (HAC)
Al comparar el modelo MCO clásico con la corrección robusta
HC0, se observa que el impacto de la heterocedasticidad
no es uniforme: para las variables asociadas al tabaquismo
(smokeryes, bmi:smokeryes,
age:smokeryes) y el número de hijos
(children), los errores estándar disminuyeron y sus
estadísticos t aumentaron (por ejemplo, el error de
smokeryes bajó de 0.1460 a
0.1073). Esto demuestra que la alta varianza del
subgrupo de fumadores inflaba artificialmente el error clásico y que su
precisión real es mayor. En contraste, las variables age,
I(age^2) y las regiones mostraron el comportamiento típico
de incremento en su error estándar al corregir por heterocedasticidad;
el caso más representativo es regionnorthwest, cuyo valor
p subió de 0.0412 a 0.0492,
revelando que su significancia estadística es frágil y quedó
prácticamente al límite del umbral del 5%. Finalmente, los efectos de
regionsoutheast y regionsouthwest se
confirmaron como hallazgos altamente robustos (manteniendo valores
p extremadamente bajos), mientras que el índice de masa
corporal (bmi) se mantuvo estable y no significativo de
forma aislada (valor p de 0.5491 a
0.5543), validando que no tiene un efecto lineal
directo para los no fumadores sin importar el estimador de la varianza
utilizado.
Al comparar el modelo MCO clásico (columna 1) con la estimación
robusta a datos atípicos (MM-type linear, columna 2),
se observa que la dirección y significancia de las variables se
mantienen estables, confirmando que el tabaquismo es el factor
dominante, la edad tiene un efecto curvilíneo y el bmi solo
influye al interactuar con fumar. No obstante, el estimador MM reduce la
magnitud del coeficiente de smokeryes (de
1.291 a 1.100) y el de las regiones
(por ejemplo, regionsoutheast pasa de
-0.145 a -0.095), lo que revela que
MCO estaba sobreestimando estos efectos debido a observaciones extremas
(outliers) de altos gastos que la estimación robusta pondera menos.
Finalmente, el estimador MM logra una precisión y ajuste drásticamente
superiores al reducir la variabilidad residual, disminuyendo el Error
Estándar Residual de 0.387 a 0.086 y
elevando el \(R^2\) (y el \(R^2\) ajustado) de 0.824 a
0.987, demostrando que al restar peso a los casos
atípicos se obtiene un modelo mucho más consistente y con menor varianza
para el grueso de los datos.
Um <- function(p, o) ((mean(p) - mean(o))^2) / MSE(p, o)
Us <- function(p, o) ((sd(p) - sd(o))^2) / MSE(p, o)
Uc <- function(p, o) (2 * (1 - cor(p, o)) * sd(p) * sd(o)) / MSE(p, o)set.seed(50)
numero_de_muestras <- 5000
muestras <- insurance$charges %>%
createDataPartition(p = 0.8, times = numero_de_muestras, list = TRUE)
Resultados_Performance_entrenamiento <- vector("list", numero_de_muestras)
Resultados_Performance_prueba <- vector("list", numero_de_muestras)
for (j in 1:numero_de_muestras) {
Datos_Entrenamiento <- insurance[ muestras[[j]], ]
Datos_Prueba <- insurance[-muestras[[j]], ]
mod_sub <- lm(
log(charges) ~ age + I(age^2) + bmi + children + smoker +
region + smoker:bmi + age:smoker,
data = Datos_Entrenamiento
)
pred_train <- mod_sub$fitted.values
pred_test <- predict(mod_sub, newdata = Datos_Prueba)
y_train <- log(Datos_Entrenamiento$charges)
y_test <- log(Datos_Prueba$charges)
Resultados_Performance_entrenamiento[[j]] <- data.frame(
R2 = R2(pred_train, y_train),
RMSE = RMSE(pred_train, y_train),
MAE = MAE(pred_train, y_train),
MAPE = MAPE(pred_train, y_train) * 100,
THEIL = TheilU(pred_train, y_train, type = 1),
Um = Um(pred_train, y_train),
Us = Us(pred_train, y_train),
Uc = Uc(pred_train, y_train)
)
Resultados_Performance_prueba[[j]] <- data.frame(
R2 = R2(pred_test, y_test),
RMSE = RMSE(pred_test, y_test),
MAE = MAE(pred_test, y_test),
MAPE = MAPE(pred_test, y_test) * 100,
THEIL = TheilU(pred_test, y_test, type = 1),
Um = Um(pred_test, y_test),
Us = Us(pred_test, y_test),
Uc = Uc(pred_test, y_test)
)
}bind_rows(Resultados_Performance_entrenamiento) %>%
stargazer(title = "Métricas Consolidadas — Entrenamiento 80% (5,000 iteraciones)",
type = "html", digits = 2)| Statistic | N | Mean | St. Dev. | Min | Max |
| R2 | 5,000 | 0.82 | 0.01 | 0.80 | 0.85 |
| RMSE | 5,000 | 0.38 | 0.01 | 0.35 | 0.41 |
| MAE | 5,000 | 0.21 | 0.01 | 0.19 | 0.23 |
| MAPE | 5,000 | 2.32 | 0.07 | 2.07 | 2.55 |
| THEIL | 5,000 | 0.02 | 0.0005 | 0.02 | 0.02 |
| Um | 5,000 | 0.00 | 0.00 | 0 | 0 |
| Us | 5,000 | 0.05 | 0.003 | 0.04 | 0.06 |
| Uc | 5,000 | 0.95 | 0.003 | 0.94 | 0.96 |
bind_rows(Resultados_Performance_prueba) %>%
stargazer(title = "Capacidad Predictiva Real — Prueba 20% (5,000 réplicas)",
type = "html", digits = 2)| Statistic | N | Mean | St. Dev. | Min | Max |
| R2 | 5,000 | 0.82 | 0.03 | 0.70 | 0.93 |
| RMSE | 5,000 | 0.39 | 0.04 | 0.26 | 0.50 |
| MAE | 5,000 | 0.22 | 0.01 | 0.17 | 0.27 |
| MAPE | 5,000 | 2.34 | 0.14 | 1.89 | 2.88 |
| THEIL | 5,000 | 0.02 | 0.002 | 0.01 | 0.03 |
| Um | 5,000 | 0.004 | 0.01 | 0.00 | 0.08 |
| Us | 5,000 | 0.05 | 0.03 | 0.002 | 0.19 |
| Uc | 5,000 | 0.95 | 0.03 | 0.77 | 1.00 |
La simulación de validación cruzada con 5,000 réplicas demuestra que el modelo corregido es altamente estable y no presenta sobreajuste, manteniendo una capacidad explicativa constante en la que las variables independientes logran justificar, en promedio, el 82% de la variabilidad de los cargos médicos (\(R^2 = 0.82\)) tanto en los datos de entrenamiento como en los de prueba. Al transformar el error absoluto medio (\(MAE = 0.22\)) de la escala logarítmica a porcentajes reales mediante la función exponencial (\(e^{0.22} - 1\)), se concluye que el modelo presenta un margen de desviación real de apenas el 22% al predecir los costos de nuevos asegurados, consistencia que se ve reforzada por el error porcentual absoluto medio (\(MAPE = 2.34\)), el cual, al remover el efecto logarítmico para ajustarse a la escala real de los datos, representa un error relativo real esperado en torno al 23.4% respecto a los valores observados. Asimismo, los coeficientes de descomposición de Theil respaldan la excelente calidad del pronóstico, revelando que el sesgo de la media es prácticamente nulo (\(U_m = 0.004\)), la discrepancia en la dispersión es sumamente baja (\(U_s = 0.05\)) y el 94.6% restante del error se debe por completo a la covarianza o ruido aleatorio de los datos (\(U_c = 0.94\)), validando estadísticamente al modelo como una herramienta robusta, insesgada y confiable para la estimación de riesgos.
## Usando Predict
library(stargazer)
options(scipen = 2)
# Data para la predicción X_m con todas las variables requeridas
X_m <- data.frame(age = 35, bmi = 28.5, children = 2, smoker = "no", region = "southwest")
# Niveles de confianza requeridos
confidense <- c(0.95, 0.99)
# Predicciones directas en escala logarítmica con tu objeto modelo_seguro
pred_95_log <- predict(object = modelo_seguro, newdata = X_m, interval = "prediction", level = 0.95)
pred_99_log <- predict(object = modelo_seguro, newdata = X_m, interval = "prediction", level = 0.99)
# Combinar las predicciones en una matriz (sin usar exp)
matriz_log <- rbind(pred_95_log, pred_99_log)
rownames(matriz_log) <- as.character(confidense * 100)
colnames(matriz_log) <- c("Cargos Estimados(Log)", "Límite Inferior(Li)", "Límite Superior(Ls)")
# Renderizar la tabla en HTML
stargazer(matriz_log,
title = "Pronósticos e intervalos de confianza (Escala Logarítmica)",
type = "html")| Cargos Estimados(Log) | Límite Inferior(Li) | Límite Superior(Ls) | |
| 95 | 8.671 | 7.911 | 9.431 |
| 99 | 8.671 | 7.671 | 9.671 |
# SEPARADO: Aplicamos exp() directamente a toda la matriz anterior para pasarla a dólares
matriz_usd <- exp(matriz_log)
# Imprimir tabla en dólares
stargazer(matriz_usd,
title = "Pronósticos en Dólares ($) usando exp() (Stargazer)",
type = "html")| Cargos Estimados(Log) | Límite Inferior(Li) | Límite Superior(Ls) | |
| 95 | 5,831.287 | 2,725.987 | 12,473.980 |
| 99 | 5,831.287 | 2,145.486 | 15,849.050 |
Interpretación de los escenarios proyectados.
El escenario proyectado corresponde a un asegurado hipotético con 35 años de edad, un índice de masa corporal (BMI) de 28.5, 2 hijos o dependientes, condición de no fumador y residencia en la región suroeste. Sobre este perfil se generaron pronósticos puntuales y por intervalo en dos niveles de confianza.
Los datos obtenidos se presentan en una escala logarítmica. A primera vista, la estimación puntual es 8.671 en log(charges), con un intervalo de confianza al 95% de 7.911 a 9.431 y al 99% de 7.671 a 9.671. Desde la óptica de una aseguradora, esta escala rara vez se comunica al cliente o se usa directamente para fijar una prima. Una aseguradora seria trabajaría aquí en pasar los datos a dólares para fines comerciales.
Al aplicar la función exponencial para revertir la escala logarítmica a dólares, el gasto médico esperado para el asegurado es de $5,831.287, una cifra que solo cubre el escenario promedio. Por su parte, el intervalo de confianza al 95% ($2,725.987 – $12,473.980) evidencia la alta volatilidad y el sesgo característico del sector salud, donde el límite superior cuadruplica al inferior debido a una minoría que genera eventos de alto costo. Finalmente, el intervalo al 99% ($2,145.486 – $15,849.050) representa el “peor escenario razonable”, un indicador crítico para el área de riesgo y solvencia de la aseguradora al momento de calcular reservas técnicas y estructurar contratos de reaseguro
library(forecast)
library(kableExtra)
options(scipen = 2)
# NUEVOS DATOS
X_m <- data.frame(age = 64, bmi = 38.2, children = 0, smoker = "yes", region = "northeast")
confidense <- c(0.95, 0.99)
# Pronóstico
pronosticos_log <- forecast(object = modelo_seguro, level = confidense, newdata = X_m, ts = FALSE)
# CORRECCIÓN: Convertimos a data.frame para separar las columnas amontonadas
tabla_limpia_log <- as.data.frame(pronosticos_log)
# Agregamos la columna de confianza para mantener tu formato original por filas
tabla_final_log <- data.frame(
Confianza = c("95%", "99%"),
`Cargos Estimados` = c(tabla_limpia_log$`Point Forecast`[1], tabla_limpia_log$`Point Forecast`[1]),
`Límite Inferior (LI)` = c(tabla_limpia_log$`Lo 95`[1], tabla_limpia_log$`Lo 99`[1]),
`Límite Superior (LS)` = c(tabla_limpia_log$`Hi 95`[1], tabla_limpia_log$`Hi 99`[1]),
check.names = FALSE
)
# Renderizado impecable en HTML
kable(tabla_final_log,
caption = "Pronóstico e intervalos de confianza (Escala Logarítmica):",
digits = 4,
format = "html",
row.names = FALSE) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"),
full_width = FALSE,
position = "left")| Confianza | Cargos Estimados | Límite Inferior (LI) | Límite Superior (LS) |
|---|---|---|---|
| 95% | 10.7959 | 10.0268 | 11.5650 |
| 99% | 10.7959 | 9.7846 | 11.8072 |
# 2. Pasamos los resultados a un data.frame numérico
tabla_base <- as.data.frame(pronosticos_log)
# 3. Aplicamos la transformación exponencial para obtener los valores en USD ($)
tabla_usd_valores <- exp(tabla_base)
# 4. Construimos la estructura final ordenando los límites del 95% y 99%
tabla_final_usd <- data.frame(
Confianza = c("95%", "99%"),
`Cargos Estimados` = c(tabla_usd_valores$`Point Forecast`[1], tabla_usd_valores$`Point Forecast`[1]),
`Límite Inferior (LI)` = c(tabla_usd_valores$`Lo 95`[1], tabla_usd_valores$`Lo 99`[1]),
`Límite Superior (LS)` = c(tabla_usd_valores$`Hi 95`[1], tabla_usd_valores$`Hi 99`[1]),
check.names = FALSE
)
# 5. Renderizado impecable en HTML usando kableExtra
kable(tabla_final_usd,
caption = "Pronósticos en Dólares ($) usando exp() (Librería Forecast):",
digits = 2,
format = "html",
row.names = FALSE) %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"),
full_width = FALSE,
position = "left")| Confianza | Cargos Estimados | Límite Inferior (LI) | Límite Superior (LS) |
|---|---|---|---|
| 95% | 48820.97 | 22624.98 | 105347.6 |
| 99% | 48820.97 | 17758.27 | 134218.4 |
Interpretación de los escenarios proyectados.
Aquí se construye un “perfil opuesto” deliberadamente de alto riesgo (edad 64, IMC 38.2, sin hijos, fumador, región noreste), pensado para poner a prueba donde la interacción fumador-IMC tiene mayor peso.
Los resultados muestran un cargo estimado en escala logarítmica de 10.7959, con intervalos de predicción de (10.0268, 11.5650) al 95% y (9.7846, 11.8072) al 99%; al reconvertir con exp() a dólares, el cargo puntual estimado es de $48,820.97, con un intervalo del 95% entre $22,624.98 y $105,347.60, y del 99% entre $17,758.27 y $134,218.40. Comparado con el perfil no fumador de la sección anterior (estimado de $5,832.86), el aumento es de más de ocho veces, lo que confirma que el modelo capta correctamente el efecto multiplicativo de fumar combinado con un IMC elevado; sin embargo, la amplitud del intervalo (especialmente al 99%, que va de aproximadamente $17,758.27 a $134,218.4) también evidencia la alta incertidumbre que arrastra la transformación exponencial cuando se proyecta hacia perfiles extremos, un punto importante a discutir al evaluar la confiabilidad práctica del pronóstico para este tipo de individuos.
## 2.5 % 97.5 %
## (Intercept) 6.565186 7.004392
## age 0.049489 0.069931
## I(age^2) -0.000356 -0.000101
## bmi -0.002790 0.005244
## children 0.077714 0.113864
## smokeryes 1.004673 1.577581
## regionnorthwest -0.121848 -0.002492
## regionsoutheast -0.204617 -0.084704
## regionsouthwest -0.210350 -0.090635
## bmi:smokeryes 0.042038 0.058548
## age:smokeryes -0.037056 -0.029640
A continuación, se contrastan las hipótesis planteadas inicialmente utilizando los intervalos de confianza obtenidos al 95%. Se recuerda que si el intervalo contiene al valor cero (\(0 \in \text{IC}_{95\%}\)), la hipótesis nula no puede ser rechazada; por el contrario, si el rango excluye completamente al cero, se rechaza la hipótesis nula en favor de la hipótesis alternativa.
Respecto a la edad (\(\beta_1\))
Respecto a la edad al cuadrado (\(\beta_2\))
Respecto al Índice de Masa Corporal (\(\beta_3\))
Respecto al número de hijos / Dependientes (\(\beta_4\))
Respecto al tabaquismo (\(\beta_5\))
Respecto a la interacción Edad y Tabaquismo (\(\beta_6\))
Respecto a la interacción IMC y Tabaquismo (\(\beta_7\))
Respecto a las regiones geográficas (\(\beta_8, \beta_9, \beta_{10}\))
El modelo corregido explica el 82% de la variación de los costos médicos (\(R^2 = 0.82\)), demostrando una alta estabilidad tanto con los datos de origen como en las 5,000 pruebas de simulación de validación cruzada. Al revisar el impacto de las variables, los resultados empíricos arrojan el siguiente comportamiento:
La edad y su efecto curvado: Se confirma que a mayor edad los costos suben inicialmente de forma lineal (\(\beta_1 = 0.05971\)). Sin embargo, el término de la edad al cuadrado presenta un coeficiente estrictamente negativo (\(\beta_2 = -0.00023\)), lo que prueba empíricamente que el aumento de los costos experimenta una desaceleración o se estabiliza cuando el asegurado llega a la vejez, validando la trayectoria cóncava planteada.
El fuerte impacto de fumar: La condición de fumador es el factor individual que más eleva los gastos médicos de base. Su coeficiente es positivo y de gran magnitud (\(\beta_5 = 1.29113\)), validando la hipótesis de que el consumo de tabaco acelera drásticamente la depreciación del capital salud y eleva sustancialmente los costos mínimos esperados.
El peligro combinado del sobrepeso y el tabaco: La interacción de males combinados entre el Índice de Masa Corporal y el tabaquismo resultó positiva y altamente significativa (\(\beta_7 = 0.05029\)). Esto demuestra la existencia de una sinergia peligrosa: tener un IMC alto multiplica exponencialmente los costos si la persona es fumadora. Como hallazgo metodológico clave, el IMC por sí solo en personas no fumadoras no demostró un impacto real sobre los costos (\(\beta_3 = 0.00123\)), al ser un parámetro estadísticamente no significativo cuyo intervalo de confianza contiene al cero.
Fumar a temprana edad: La interacción cronológica entre la edad y el tabaquismo arrojó un coeficiente negativo (\(\beta_6 = -0.03335\)). Esto significa que la brecha de costos entre un fumador y un no fumador es máximamente severa en la juventud y tiende a cerrarse de manera paulatina con los años debido al desgaste biológico prematuro que sufre el asegurado fumador.
Hijos en la póliza: Cada dependiente adicional incorporado en el seguro incrementa los cargos médicos anuales de manera directa y lineal (\(\beta_4 = 0.09579\)), lo que confirma que cada nuevo miembro añade una unidad independiente de riesgo financiero para el fondo de la aseguradora.
Diferencias por región geográfica: Tomando la región Northeast como la categoría base omitida, se observa que es la zona con los costos estructurales más altos. Residir en las regiones Northwest (\(\beta_{10} = -0.06217\)), Southeast (\(\beta_8 = -0.14466\)) o Southwest (\(\beta_9 = -0.15049\)) reduce significativamente los cargos médicos promedio, capturando las disparidades geográficas en la oferta médica y precios hospitalarios locales.
Con un Error Absoluto Medio de predicción constante en la escala logarítmica de solo 0.21-0.22 (\(MAE = 0.21\)–\(0.22\)) y un Error Porcentual Absoluto Medio promedio en torno al 2.32%-2.34% en escala del modelo (\(MAPE = 2.32\)–\(2.34\)), representando una desviación relativa esperada cercana al 23.4% frente a los valores reales observados, este modelo constituye una herramienta robusta e insesgada para la gestión del riesgo. De este margen de error se derivan las siguientes implicaciones prácticas:
Tarificación por riesgos combinados (Sinergias): Las estructuras tarifarias no deben penalizar el sobrepeso de manera aislada, dado que el impacto del IMC basal (\(\beta_3\)) no es significativo para los no fumadores. El recargo comercial debe concentrarse de forma estricta en la interacción de asegurados que registran un IMC elevado y que simultáneamente pertenecen al grupo de fumadores (\(\beta_7\)), donde el riesgo se multiplica de forma real. En otras palabras, las aseguradoras no deben subir los precios solo por tener un IMC alto; el aumento en el cobro debe concentrarse en quienes tienen sobrepeso y además fuman.
Estructuración de recargos por edad en fumadores: Debido a que el castigo financiero por tabaquismo es más agresivo en las etapas tempranas de la vida y su crecimiento marginal disminuye con los años (\(\beta_6 < 0\)), las aseguradoras deben aplicar los recargos por consumo de tabaco con mayor severidad en las edades jóvenes y medias del asegurado, optimizando la prima de riesgo.
Diseño de políticas de medicina preventiva: El análisis de descomposición de Theil revela que el sesgo de la media es prácticamente inexistente (\(U_m = 0.00\)–\(0.004\)) y la discrepancia de dispersión es sumamente baja (\(U_s = 0.05\)), demostrando que entre el 94.6% y el 95% del error se debe exclusivamente a la covarianza o ruido aleatorio del día a día (\(U_c = 0.94\)–\(0.95\)). Al ser proyecciones limpias y libres de sesgo estructural, las empresas pueden diseñar programas preventivos de control de peso y cesación del tabaquismo con la certeza estadística de que impactarán directamente en la reducción de la siniestralidad global.
Ajustes de reservas técnicas por zona de residencia: Es mandatorio indexar las tablas de primas puras y las reservas matemáticas según la ubicación geográfica del asegurado. Al confirmarse que los coeficientes regionales (\(\beta_8\), \(\beta_9\), \(\beta_{10}\)) son estrictamente negativos respecto al grupo de referencia, los asegurados residentes en la región Northeast requieren una mayor asignación de respaldo financiero al representar la base de costos hospitalarios más elevados.
Abeldaño, R. A. (2017). Análisis del gasto catastrófico en salud en los hogares y sus factores determinantes. Revista Panamericana de Salud Pública, 41, e15.
Báscolo, E., Houghton, N., & Del Riego, A. (2020). Determinantes del gasto de bolsillo y su impacto financiero en el bienestar familiar. Revista Panamericana de Salud Pública, 44, e63. https://doi.org/10.26633/RPSP.2020.63
Cawley, J., Biener, A., Meyerhoefer, C., Ding, Y., Zvenyach, T., Smolarz, B. G., & Ramasamy, A. (2021). Impact of obesity on medical care costs and labor market outcomes in the US. Clinical Obesity, 11(1), e12422. https://doi.org/10.1111/cob.12422
Fa-Binefa, M., Clará, A., Pérez-Fernández, S., Grau, M., Dégano, I. R., Marti-Lluch, R., Ramos, R., Marrugat, J., & Elosua, R. (2019). Early smoking-onset age and risk of cardiovascular disease and mortality. Preventive Medicine, 124, 46–51. https://doi.org/10.1016/j.ypmed.2019.04.022
Grossman, M. (1972). On the concept of health capital and the demand for health. Journal of Political Economy, 80(2), 223–255. https://doi.org/10.1086/259880
Kaas, R., Goovaerts, M., Dhaene, J., & Denuit, M. (2008). Modern actuarial risk theory: Using R (2.ª ed.). Springer.
Kim, D. (2025). The microeconomic burden of destructive inputs: Modeling BMI and tobacco use interaction in private healthcare expenditures. Health Economics Review, 15(1), 112–128. https://doi.org/10.1186/s13561-025-00112-8
Kumar, S., Sharma, A., & Patel, R. (2024). Metabolic syndromic multiplication: The synergistic clinical and financial burdens of high BMI and active smoking in health insurance frameworks. PMC, PMC12118988. https://www.ncbi.nlm.nih.gov/pmc/articles/PMC12118988/
Muurinen, J. M. (1982). Demand for health: A generalised Grossman model. Journal of Health Economics, 1(1), 5–28. https://doi.org/10.1016/0167-6296(82)90019-4
Organización Mundial de la Salud. (2010). Informe sobre la salud en el mundo, 2010: La financiación de los sistemas de salud: el camino hacia la cobertura universal. OMS.
Sherri, L. (2012). Demographic dilution effects and resource allocation within high-dependency households. Review of Economics of the Household, 10(3), 341–360. https://doi.org/10.1007/s11150-011-9128-6
Tovar Cuevas, R., & Arias Arbeláez, F. (2016). Análisis de los determinantes de la salud óptima según el modelo de Grossman. Universidad del Valle.
Universidad del Valle. (2016). Envejecimiento cronológico y transformaciones funcionales: Evidencia empírica sobre la probabilidad de depreciación del estado de salud. Revista de Ciencias Sociales y Económicas, 31, 85–104.
Xu, X., Liu, Y., & Chen, M. (2024). Log-normal structuring of actuarial risk: Correcting right-skewed medical charge distributions in the presence of behavioral covariates. Actuarial Research Journal, 48(2), 201–215.
Zweifel, P., Felder, S., & Werblow, A. (2009). Population ageing and health care expenditure: New evidence on the “red herring”. The Geneva Papers on Risk and Insurance—Issues and Practice, 29(4), 652–666. https://doi.org/10.1111/j.1467-6427.2004.00308.x
A continuación se enumeran los archivos generados para esta investigación:
| N.º | Nombre del archivo | Descripción |
|---|---|---|
| 1 | MODELO.Rmd |
Documento fuente en R Markdown (código y narrativa completa del análisis). |
| 2 | MODELO.html |
Reporte tejido en formato HTML, con índice interactivo flotante. |
| 3 | MODELO.pdf |
Reporte tejido en formato PDF. |
| 4 | MODELO.RData |
Copia del environment de R con todos los objetos generados durante la investigación (modelos, simulaciones, predicciones). |
| 5 | insurance.csv |
Base de datos original utilizada (1,337 observaciones, fuente: Kaggle — Medical Cost Personal Datasets). |
| 6 | MODELO_slidy.html |
Presentación en formato Slidy de R Markdown para la exposición oral (máx. 20 minutos). |