Curso: Doutorado Profissional em Economia
Disciplina: Introdução à Estatística e Econometria
Professor: Alexandre Xavier Ywata de Carvalho
Tema: Lista 2 - Análise de Regressão


# Carregar base de dados
wine.df <- read.csv("wine_data.csv", header = TRUE, sep = ",", dec = ".", 
                   encoding = "UTF-8", stringsAsFactors = FALSE)

Introdução

Esta atividade apresenta a aplicação de modelos de regressão linear para diferentes bases de dados, com o objetivo de ilustrar especificação, estimação, avaliação de ajuste e interpretação econômica dos coeficientes.

Na primeira parte, uma análise de regressão linear múltipla é realizada para prever o preço de vinhos com base em características climáticas.

Em seguida, analisa-se a relação entre características individuais e gastos médicos em planos de saúde.São estimados modelos com variáveis explicativas numéricas e com variáveis categóricas.

Por fim, analisa-se a expectativa de vida por país com dados da Organização Mundial da Saúde (OMS), estimando-se um modelo de regressão linear múltipla com diversas variáveis demográficas, epidemiológicas, socioeconômicas e de gasto em saúde.

Base de Dados e Estatísticas Descritivas

A base de dados possui 27 observações e 7 variáveis, cobrindo o período de 1952 a 1980.

df_info <- data.frame(
  Variável = names(wine.df),
  Descrição = c(
    "Ano da safra",
    "Preço do vinho",
    "Precipitação no inverno",
    "Temperatura média na estação de crescimento",
    "Precipitação na colheita",
    "Idade do vinho",
    "População da França"
  )
)

kable(df_info, caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 1: Descrição das Variáveis</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 1: Descrição das Variáveis

Variável Descrição
Year Ano da safra
Price Preço do vinho
WinterRain Precipitação no inverno
AGST Temperatura média na estação de crescimento
HarvestRain Precipitação na colheita
Age Idade do vinho
FrancePop População da França

Estatísticas Descritivas

stats_df <- describe(wine.df)[, c("n", "mean", "sd", "min", "max")]
stats_df <- round(stats_df, 3)

kable(stats_df, caption = "<p style='text-align: center; color: black; font-weight: bold; '> Tabela 2:Estatísticas Descritivas</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 2:Estatísticas Descritivas

n mean sd min max
Year 27 1966.815 8.246 1952.000 1980.000
Price 27 7.042 0.635 6.205 8.494
WinterRain 27 608.407 129.035 376.000 830.000
AGST 27 16.478 0.659 14.983 17.650
HarvestRain 27 144.815 73.066 38.000 292.000
Age 27 16.185 8.246 3.000 31.000
FrancePop 27 50085.444 3792.999 43183.569 55110.236

Análise Exploratória

# Configurar tema para os gráficos
theme_set(theme_minimal(base_size = 12))

# 1. Preço vs Temperatura
p1 <- ggplot(wine.df, aes(x = AGST, y = Price)) +
  geom_point(color = "#3498db", size = 3, alpha = 0.7) +
  geom_smooth(method = "lm", se = TRUE, color = "#e74c3c", fill = "#f1948a") +
  labs(title = "Preço vs Temperatura", 
       x = "Temperatura Média (°C)", 
       y = "Preço do Vinho") +
  theme(plot.title = element_text(face = "bold"))

# 2. Preço vs Precipitação na Colheita
p2 <- ggplot(wine.df, aes(x = HarvestRain, y = Price)) +
  geom_point(color = "#e74c3c", size = 3, alpha = 0.7) +
  geom_smooth(method = "lm", se = TRUE, color = "#3498db", fill = "#85c1e9") +
  labs(title = "Preço vs Precipitação na Colheita", 
       x = "Precipitação na Colheita (mm)", 
       y = "Preço do Vinho") +
  theme(plot.title = element_text(face = "bold"))

# 3. Preço vs Precipitação no Inverno
p3 <- ggplot(wine.df, aes(x = WinterRain, y = Price)) +
  geom_point(color = "#2ecc71", size = 3, alpha = 0.7) +
  geom_smooth(method = "lm", se = TRUE, color = "#f39c12", fill = "#f8c471") +
  labs(title = "Preço vs Precipitação no Inverno", 
       x = "Precipitação no Inverno (mm)", 
       y = "Preço do Vinho") +
  theme(plot.title = element_text(face = "bold"))

# 4. Preço vs Ano
p4 <- ggplot(wine.df, aes(x = Year, y = Price)) +
  geom_point(color = "#f39c12", size = 3, alpha = 0.7) +
  geom_smooth(method = "lm", se = TRUE, color = "#2ecc71", fill = "#82e0aa") +
  labs(title = "Preço vs Ano", 
       x = "Ano", 
       y = "Preço do Vinho") +
  theme(plot.title = element_text(face = "bold"))

# Combinar gráficos
(p1 + p2) / (p3 + p4) + 
  plot_annotation(title = "Análise Exploratória: Relações entre Variáveis",
                  theme = theme(plot.title = element_text(size = 16, face = "bold")))

Questão 1: Análise de Regressão Linear

# Modelo de regressão linear múltipla

regressao1 <- lm(Price ~ AGST + HarvestRain + WinterRain, data = wine.df)

Equação Estimada do Modelo:

Preço = -4.9506 + 0.7123 × Temperatura + -0.0036 × Precipitação Colheita + 0.0013 × Precipitação Inverno

coef_df <- coef(summary(regressao1))
coef_df <- round(coef_df, 4)

colnames(coef_df) <- c("Estimativa", "Erro Padrão", "Valor t", "Valor p")

kable(coef_df, caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 3: Coeficientes do Modelo de Regressão</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 3: Coeficientes do Modelo de Regressão

Estimativa Erro Padrão Valor t Valor p
(Intercept) -4.9506 1.9694 -2.5138 0.0194
AGST 0.7123 0.1088 6.5490 0.0000
HarvestRain -0.0036 0.0010 -3.7573 0.0010
WinterRain 0.0013 0.0006 2.2235 0.0363

Respostas (a) a (h)

# Cálculos da questão 1
delta_preco_5graus <- coef(regressao1)["AGST"] * 5
delta_preco_inv_100 <- coef(regressao1)["WinterRain"] * (-100)
delta_preco_colheita_100 <- coef(regressao1)["HarvestRain"] * 100

# Preço contrafactual para 1975
wine_1975 <- subset(wine.df, Year == 1975)
novo_1975 <- data.frame(
  AGST = 15.5,
  HarvestRain = wine_1975$HarvestRain,
  WinterRain = wine_1975$WinterRain
)
preco_1975_cf <- predict(regressao1, newdata = novo_1975)

# Preço contrafactual para 1961
wine_1961 <- subset(wine.df, Year == 1961)
novo_1961 <- data.frame(
  AGST = wine_1961$AGST,
  HarvestRain = 150,
  WinterRain = wine_1961$WinterRain
)
preco_1961_cf <- predict(regressao1, newdata = novo_1961)

# Variações por desvio-padrão
sd_AGST <- sd(wine.df$AGST)
delta_preco_1dp <- coef(regressao1)["AGST"] * sd_AGST

sd_WinterRain <- sd(wine.df$WinterRain)
delta_preco_1dp_Winter <- coef(regressao1)["WinterRain"] * sd_WinterRain

sd_HarvestRain <- sd(wine.df$HarvestRain)
delta_preco_1dp_Harvest <- coef(regressao1)["HarvestRain"] * sd_HarvestRain

# Erros de previsão
wine_1971 <- subset(wine.df, Year == 1971)
preco_real_1971 <- wine_1971$Price
preco_estimado_1971 <- predict(regressao1, newdata = wine_1971)
erro_prev_1971 <- preco_real_1971 - preco_estimado_1971

wine_1980 <- subset(wine.df, Year == 1980)
preco_real_1980 <- wine_1980$Price
preco_estimado_1980 <- predict(regressao1, newdata = wine_1980)
erro_prev_1980 <- preco_real_1980 - preco_estimado_1980
# Tabela de respostas
respostas_q1 <- data.frame(
  Item = c("(a)", "(b)", "(c)", "(d)", "(e)", "(f)", "(g)", "(h)"),
  Descrição = c(
    "Variação do preço para +5°C na temperatura",
    "Variação do preço para –100 mm no inverno", 
    "Variação do preço para +100 mm na colheita",
    "Variação do Preço 1975 (T=15.5°C)",
    "Variação do Preço 1961 (P_colheita=150mm)",
    "Variação do Preço para +1dp temperatura",
    "Variação para +1dp inverno",
    "Variação do Preço para +1dp colheita"
    
  ),
  Valor = c(
    round(delta_preco_5graus, 4),
    round(delta_preco_inv_100, 4),
    round(delta_preco_colheita_100, 4),
    round(preco_1975_cf, 4),
    round(preco_1961_cf, 4),
    round(delta_preco_1dp, 4),
    round(delta_preco_1dp_Winter, 4),
    round(delta_preco_1dp_Harvest, 4)
    
  )
)


kable(respostas_q1, caption = "<p style='text-align: center;color: black; font-weight: bold;'> Tabela 4: Respostas da Questão 1</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 4: Respostas da Questão 1

Item Descrição Valor
Variação do preço para +5°C na temperatura 3.5616
Variação do preço para –100 mm no inverno -0.1282
Variação do preço para +100 mm na colheita -0.3624
Variação do Preço 1975 (T=15.5°C) 6.2039
Variação do Preço 1961 (P_colheita=150mm) 7.9166
Variação do Preço para +1dp temperatura 0.4696
Variação para +1dp inverno 0.1654
Variação do Preço para +1dp colheita -0.2648

Respostas (i) a (l)

Comparação real vs estimado e erro de previsão (Q1 i–l)

comparacao_anos <- data.frame(
  Ano = c(1971, 1980),
  Preco_real = c(preco_real_1971, preco_real_1980),
  Preco_estimado = c(preco_estimado_1971, preco_estimado_1980),
  Erro_previsao = c(erro_prev_1971, erro_prev_1980) # real – estimado
)

kable(comparacao_anos,
      caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 5: Comparação entre preço real, estimado e erro de previsão (Q1 i–l)</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 5: Comparação entre preço real, estimado e erro de previsão (Q1 i–l)

Ano Preco_real Preco_estimado Erro_previsao
18 1971 7.1934 7.293085 -0.0996850
27 1980 6.4979 6.919283 -0.4213833

Para 1971, o erro de previsão (preço real menos preço estimado) foi de -0.0997, indicando que o modelo superestima/subestima o preço observado. Para 1980, o erro de previsão foi de -0.4214.

Questão 2: Coeficiente de Determinação

r2 <- summary(regressao1)$r.squared
r2_ajustado <- summary(regressao1)$adj.r.squared

q2_df <- data.frame(
  Métrica = c("R² (Coeficiente de Determinação)", "R² Ajustado"),
  Valor = c(round(r2, 4), round(r2_ajustado, 4)),
  Interpretação = c(
    paste("O modelo explica", round(r2*100, 2), "% da variação no preço do vinho"),
    paste("Após ajuste, o modelo explica", round(r2_ajustado*100, 2), "% da variação")
  )
)


kable(q2_df, caption = "<p style='text-align: center;color: black; font-weight: bold;'> Tabela 6: Coeficientes de Determinação</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 6: Coeficientes de Determinação

Métrica Valor Interpretação
R² (Coeficiente de Determinação) 0.7407 O modelo explica 74.07 % da variação no preço do vinho
R² Ajustado 0.7069 Após ajuste, o modelo explica 70.69 % da variação

Portanto, respondendo à Questão 2, o valor de R² é 0.7407 e o valor de R² ajustado é 0.7069, indicando que o modelo explica aproximadamente 70.69% da variação do preço do vinho.

Questão 3: Significância Estatística

# Análise de significância estatística
coef_summary <- coef(summary(regressao1))
significancia <- data.frame(
  Variável = c("Intercepto", "Temperatura (AGST)", "Precipitação Colheita", "Precipitação Inverno"),
  Coeficiente = round(coef_summary[, 1], 4),
  p_valor = round(coef_summary[, 4], 4),
  Significancia = ifelse(coef_summary[, 4] < 0.01, "***",
                        ifelse(coef_summary[, 4] < 0.05, "**",
                              ifelse(coef_summary[, 4] < 0.1, "*", "Não significativo")))
)

kable(significancia, caption = "<p style='text-align: center;color: black; font-weight: bold;'>Tabela 7: Análise de Significância Estatística (*** p < 0.01, ** p < 0.05, * p < 0.1)</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 7: Análise de Significância Estatística (*** p < 0.01, ** p < 0.05, * p < 0.1)

Variável Coeficiente p_valor Significancia
(Intercept) Intercepto -4.9506 0.0194 **
AGST Temperatura (AGST) 0.7123 0.0000 ***
HarvestRain Precipitação Colheita -0.0036 0.0010 ***
WinterRain Precipitação Inverno 0.0013 0.0363 **

Modelo Estendido com Variável Year

# Modelo estendido incluindo a variável Year
regressao2 <- lm(Price ~ AGST + HarvestRain + WinterRain + Year, data = wine.df)

coef_df2 <- coef(summary(regressao2))
coef_df2 <- round(coef_df2, 4)

colnames(coef_df2) <- c("Estimativa", "Erro Padrão", "Valor t", "Valor p")

kable(coef_df2, caption = "<p style='text-align: center; color: black; font-weight: bold;'> Tabela 8: Modelo Estendido com Variável Year</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 8: Modelo Estendido com Variável Year

Estimativa Erro Padrão Valor t Valor p
(Intercept) 43.6390 14.6939 2.9699 0.0071
AGST 0.6164 0.0952 6.4764 0.0000
HarvestRain -0.0039 0.0008 -4.7808 0.0001
WinterRain 0.0012 0.0005 2.4204 0.0242
Year -0.0238 0.0072 -3.3276 0.0031

Comparação dos Modelos

# Comparação dos modelos
comparacao <- data.frame(
  Modelo = c("Base (3 variáveis)", "Estendido (com Year)"),
  R2 = c(round(summary(regressao1)$r.squared, 4), 
         round(summary(regressao2)$r.squared, 4)),
  R2_Ajustado = c(round(summary(regressao1)$adj.r.squared, 4), 
                  round(summary(regressao2)$adj.r.squared, 4)),
  Melhoria = c("-", 
               paste("+", round((summary(regressao2)$adj.r.squared - summary(regressao1)$adj.r.squared)*100, 2), "%"))
)


kable(comparacao, caption = "<p style ='text-align: center; color: black; font-weight: bold;'> Tabela 9: Comparação dos Modelos</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50") %>%
  column_spec(4, bold = TRUE)

Tabela 9: Comparação dos Modelos

Modelo R2 R2_Ajustado Melhoria
Base (3 variáveis) 0.7407 0.7069
Estendido (com Year) 0.8275 0.7962
  • 8.93 %

Item (b): A variável Year apresenta p-valor de 0.0031, sendo significante ao nível de 1% (p < 0,01).

Item (c): Após a inclusão de Year, as demais variáveis (AGST, HarvestRain, WinterRain) permanecem estatisticamente significantes (p < 0,05), embora com pequenas alterações nos coeficientes e p-valores, o que indica que a variável Year agrega informação adicional sem anular o efeito das variáveis climáticas.

Item (d): O R² ajustado aumenta de 0.7069 para 0.7962, configurando um ganho em termos preditivos ao incluir Year.

Principais Resultados

  • Temperatura é o fator mais influente: O coeficiente para AGST (0.7123) indica que aumentos de temperatura têm forte correlação positiva com o preço do vinho.
  • Precipitação na colheita impacta negativamente: Chuva excessiva durante a colheita reduz significativamente a qualidade e o preço do vinho.
  • Modelo com bom poder explicativo: O R² de 0.7407 indica que o modelo explica 74.07% da variação nos preços.
  • Inclusão de Year melhora o modelo: A adição da variável temporal aumenta o R² ajustado para 0.7962, indicando melhor ajuste.

Questão 4: Análise de gastos com plano de saúde

4.1 Carregar e Explorar os Dados

# Carregar base de dados de planos de saúde
insurance <- read.csv("insurance.csv", header = TRUE, sep = ",", dec = ".", 
                     stringsAsFactors = FALSE)

# Estatísticas descritivas
desc_insurance <- data.frame(
  Variável = names(insurance),
  
  Descrição = c(
    "Idade do beneficiário",
    "Sexo (male/female)",
    "Índice de Massa Corporal",
    "Número de filhos/dependentes",
    "Fumante (yes/no)",
    "Região geográfica",
    "Custos médicos individuais"
  )
)

kable(desc_insurance, caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 10: Descrição das Variáveis - Planos de Saúde</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 10: Descrição das Variáveis - Planos de Saúde

Variável Descrição
age Idade do beneficiário
sex Sexo (male/female)
bmi Índice de Massa Corporal
children Número de filhos/dependentes
smoker Fumante (yes/no)
region Região geográfica
charges Custos médicos individuais
# Estatísticas descritivas
stats_insurance <- describe(insurance[, c("age", "bmi", "children", "charges")])
stats_insurance <- round(stats_insurance[, c("n", "mean", "sd", "min", "max")], 3)

kable(stats_insurance, caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 11: Estatísticas Descritivas </p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 11: Estatísticas Descritivas

n mean sd min max
age 1338 39.207 14.050 18.000 64.00
bmi 1338 30.663 6.098 15.960 53.13
children 1338 1.095 1.205 0.000 5.00
charges 1338 13270.422 12110.011 1121.874 63770.43

4.2 Item (a) - Modelo com Variáveis Numéricas

# (a) Modelo com age, bmi e children
reg.insurance1 <- lm(charges ~ age + bmi + children, data = insurance)

# Coeficientes do modelo
coef_simples <- coef(summary(reg.insurance1))
coef_simples <- round(coef_simples, 4)
colnames(coef_simples) <- c("Estimativa", "Erro Padrão", "Valor t", "Valor p")

kable(coef_simples, caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 12: Coeficientes do Modelo Simples (age + bmi + children)</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 12: Coeficientes do Modelo Simples (age + bmi + children)

Estimativa Erro Padrão Valor t Valor p
(Intercept) -6916.2433 1757.4797 -3.9353 0.0001
age 239.9945 22.2889 10.7675 0.0000
bmi 332.0834 51.3105 6.4720 0.0000
children 542.8647 258.2413 2.1022 0.0357

Interpretação do Modelo Simples:

Interpretação do Modelo Simples

Idade (age)

Cada ano adicional aumenta os custos médicos em US$ 239.99 dólares

️IMC (bmi)

Cada unidade adicional de IMC aumenta os custos em US$ 332.08 dólares

Filhos (children)

Cada filho adicional aumenta os custos em US$ 542.86 dólares

4.3 Item (b) - Percentual de Variação Explicada

# (b) Percentual de variação explicada pelo modelo simples
r2_simples <- summary(reg.insurance1)$r.squared
r2_ajustado_simples <- summary(reg.insurance1)$adj.r.squared

resultados_r2_simples <- data.frame(
  Métrica = c("R²", "R² Ajustado"),
  Valor = c(round(r2_simples, 4), round(r2_ajustado_simples, 4)),
  Interpretação = c(
    paste("O modelo explica", round(r2_simples * 100, 2), "% da variação nos gastos"),
    paste("Após ajuste, explica", round(r2_ajustado_simples * 100, 2), "% da variação")
  )
)

kable(resultados_r2_simples, caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 13: Poder Explicativo do Modelo Simples</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 13: Poder Explicativo do Modelo Simples

Métrica Valor Interpretação
0.1201 O modelo explica 12.01 % da variação nos gastos
R² Ajustado 0.1181 Após ajuste, explica 11.81 % da variação

4.4 Item (c) - Modelo com Variáveis Categóricas

# (c) Modelo com variáveis categóricas
reg.insurance2 <- lm(charges ~ age + bmi + children + as.factor(sex) + 
                      as.factor(smoker) + as.factor(region), data = insurance)

# Coeficientes do modelo completo
coef_completo <- coef(summary(reg.insurance2))
coef_completo <- round(coef_completo, 4)
colnames(coef_completo) <- c("Estimativa", "Erro Padrão", "Valor t", "Valor p")

kable(coef_completo, caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 14: Coeficientes do Modelo Completo</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 14: Coeficientes do Modelo Completo

Estimativa Erro Padrão Valor t Valor p
(Intercept) -11938.5386 987.8192 -12.0858 0.0000
age 256.8564 11.8988 21.5867 0.0000
bmi 339.1935 28.5995 11.8601 0.0000
children 475.5005 137.8041 3.4506 0.0006
as.factor(sex)male -131.3144 332.9454 -0.3944 0.6933
as.factor(smoker)yes 23848.5345 413.1534 57.7232 0.0000
as.factor(region)northwest -352.9639 476.2758 -0.7411 0.4588
as.factor(region)southeast -1035.0220 478.6922 -2.1622 0.0308
as.factor(region)southwest -960.0510 477.9330 -2.0088 0.0448

Interpretação do Modelo Completo

Fumante

Ser fumante aumenta os custos em aproximadamente US$ 23848.53 dólares

Sexo

Ser do sexo masculino reduz os custos em US$ 131.31 dólares

Região

Todas as regiões têm custos menores que o Nordeste (referência)

4.5 Itens (d) e (e) - Comparação dos Modelos

# (d) e (e) Comparação dos modelos
comparacao_insurance <- data.frame(
  Modelo = c("Simples (age + bmi + children)", "Completo (com categóricas)"),
  R2 = c(round(summary(reg.insurance1)$r.squared, 4), 
         round(summary(reg.insurance2)$r.squared, 4)),
  R2_Ajustado = c(round(summary(reg.insurance1)$adj.r.squared, 4), 
                  round(summary(reg.insurance2)$adj.r.squared, 4)),
  Melhoria = c("-", 
               paste("+", round((summary(reg.insurance2)$adj.r.squared - summary(reg.insurance1)$adj.r.squared) * 100, 2), "%"))
)

kable(comparacao_insurance, caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 15: Comparação dos Modelos de Insurance</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50") %>%
  column_spec(4, bold = TRUE)

Tabela 15: Comparação dos Modelos de Insurance

Modelo R2 R2_Ajustado Melhoria
Simples (age + bmi + children) 0.1201 0.1181
Completo (com categóricas) 0.7509 0.7494
  • 63.13 %

Pelo critério de R² ajustado, o modelo mais apropriado é o modelo completo (com variáveis categóricas), que explica 75.09% da variação em charges.

4.6 Item (f) - Significância Estatística

# (f) Análise de significância estatística
coef_summary_completo <- coef(summary(reg.insurance2))

significancia_insurance <- data.frame(
  Variável = rownames(coef_summary_completo),
  Coeficiente = round(coef_summary_completo[, 1], 4),
  p_valor = round(coef_summary_completo[, 4], 4),
  Significancia_1pct = ifelse(coef_summary_completo[, 4] < 0.01, "***", ""),
  Significancia_5pct = ifelse(coef_summary_completo[, 4] < 0.05, "**", ""),
  Significancia_10pct = ifelse(coef_summary_completo[, 4] < 0.1, "*", "")
)

kable(significancia_insurance, caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 16: Significância Estatística do Modelo Completo</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 16: Significância Estatística do Modelo Completo

Variável Coeficiente p_valor Significancia_1pct Significancia_5pct Significancia_10pct
(Intercept) (Intercept) -11938.5386 0.0000 *** **
age age 256.8564 0.0000 *** **
bmi bmi 339.1935 0.0000 *** **
children children 475.5005 0.0006 *** **
as.factor(sex)male as.factor(sex)male -131.3144 0.6933
as.factor(smoker)yes as.factor(smoker)yes 23848.5345 0.0000 *** **
as.factor(region)northwest as.factor(region)northwest -352.9639 0.4588
as.factor(region)southeast as.factor(region)southeast -1035.0220 0.0308 **
as.factor(region)southwest as.factor(region)southwest -960.0510 0.0448 **

Resumo da Questão 4

  • Modelo mais apropriado: O modelo completo com variáveis categóricas (R² Ajustado = 0.7494)
  • Poder explicativo: Explica 75.09% da variação nos gastos com planos de saúde
  • Variáveis mais significativas: Age, BMI e ser fumante são altamente significativas (p < 0.01)
  • Impacto do fumo: Ser fumante aumenta os custos em aproximadamente 23848.53 dólares

Questão 5: Análise de Expectativa de Vida - OMS

5.1 Carregar e Explorar os Dados

# Carregar base de dados de expectativa de vida
exp.vida <- read.csv("Life Expectancy WHO.csv", header = TRUE, sep = ",", dec = ".", 
                    stringsAsFactors = FALSE, na.strings = c("", "NA"))


# Descrição das variáveis
desc_exp_vida <- data.frame(
  Variável = names(exp.vida),

  Descrição = c(
    "País",
    "Ano", 
    "Status de desenvolvimento",
    "Expectativa de vida",
    "Mortalidade adulta",
    "Mortes infantis",
    "Consumo de álcool",
    "Percentual de gastos em saúde",
    "Hepatite B",
    "Sarampo",
    "Índice de massa corporal",
    "Mortes de menores de 5 anos",
    "Poliomielite",
    "Gastos totais em saúde",
    "Difteria",
    "HIV/AIDS",
    "PIB",
    "População",
    "Magreza em crianças de 1-19 anos",
    "Magreza em crianças de 5-9 anos",
    "Composição de renda dos recursos",
    "Escolaridade"
  )
)

kable(desc_exp_vida, caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 17: Descrição das Variáveis - Expectativa de Vida OMS</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 17: Descrição das Variáveis - Expectativa de Vida OMS

Variável Descrição
Country País
Year Ano
Status Status de desenvolvimento
Life_expectancy Expectativa de vida
Adult_Mortality Mortalidade adulta
infant_deaths Mortes infantis
Alcohol Consumo de álcool
percentage_expenditure Percentual de gastos em saúde
Hepatitis_B Hepatite B
Measles Sarampo
BMI Índice de massa corporal
under_five_deaths Mortes de menores de 5 anos
Polio Poliomielite
Total_expenditure Gastos totais em saúde
Diphtheria Difteria
HIV_AIDS HIV/AIDS
GDP PIB
Population População
thinness_1_19_years Magreza em crianças de 1-19 anos
thinness_5_9_years Magreza em crianças de 5-9 anos
Income_composition_of_resources Composição de renda dos recursos
Schooling Escolaridade

5.2 Análise Exploratória

# Análise exploratória visual
# Configurar tema
theme_set(theme_minimal(base_size = 12))

# Gráfico 1: Expectativa de vida por status
p1 <- ggplot(na.omit(exp.vida[, c("Life_expectancy", "Status")]), 
             aes(x = Status, y = Life_expectancy, fill = Status)) +
  geom_boxplot(alpha = 0.7) +
  scale_fill_manual(values = c("Developed" = "#3498db", "Developing" = "#e74c3c")) +
  labs(title = "Expectativa de Vida por Status do País",
       x = "Status", y = "Expectativa de Vida (anos)") +
  theme(legend.position = "none")

# Gráfico 2: Relação com PIB
p2 <- ggplot(na.omit(exp.vida[, c("Life_expectancy", "GDP", "Status")]), 
             aes(x = GDP, y = Life_expectancy, color = Status)) +
  geom_point(alpha = 0.6) +
  geom_smooth(method = "lm", se = FALSE) +
  scale_color_manual(values = c("Developed" = "#3498db", "Developing" = "#e74c3c")) +
  labs(title = "Relação: PIB vs Expectativa de Vida",
       x = "PIB per capita (US$)", y = "Expectativa de Vida (anos)")

# Combinar gráficos
p1 + p2

5.3 Item (a) - Modelo de Regressão

# (a) Modelo completo

reg.exp.vida1 = lm(Life_expectancy ~ Adult_Mortality + infant_deaths +   
                     Alcohol + percentage_expenditure + Hepatitis_B + 
                     under_five_deaths + Polio + Measles + BMI + Diphtheria 
                   + GDP + thinness_1_19_years + thinness_5_9_years + 
                     Total_expenditure + HIV_AIDS + Population +

                     Income_composition_of_resources + Schooling + 
                     as.factor(Year) + as.factor(Status), data = exp.vida)


# Resumo simplificado
coef_completo_exp <- coef(summary(reg.exp.vida1))
coef_completo_exp <- round(coef_completo_exp, 6)
colnames(coef_completo_exp) <- c("Estimativa", "Erro Padrão", "Valor t", "Valor p")

kable(coef_completo_exp, 
      caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 18: Coeficientes do Modelo de Regressão - Expectativa de Vida</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 18: Coeficientes do Modelo de Regressão - Expectativa de Vida

Estimativa Erro Padrão Valor t Valor p
(Intercept) 55.323417 0.932712 59.314583 0.000000
Adult_Mortality -0.016265 0.000950 -17.118822 0.000000
infant_deaths 0.088440 0.010642 8.310651 0.000000
Alcohol -0.131144 0.034244 -3.829717 0.000133
percentage_expenditure 0.000299 0.000180 1.666319 0.095844
Hepatitis_B -0.003515 0.004493 -0.782312 0.434146
under_five_deaths -0.066400 0.007707 -8.615468 0.000000
Polio 0.005902 0.005156 1.144813 0.252456
Measles -0.000010 0.000011 -0.947577 0.343487
BMI 0.031659 0.005991 5.284729 0.000000
Diphtheria 0.014260 0.005916 2.410382 0.016047
GDP 0.000025 0.000028 0.878790 0.379646
thinness_1_19_years -0.005435 0.052797 -0.102944 0.918020
thinness_5_9_years -0.051535 0.052085 -0.989444 0.322594
Total_expenditure 0.091474 0.040664 2.249481 0.024616
HIV_AIDS -0.446958 0.017874 -25.005815 0.000000
Population 0.000000 0.000000 -0.353308 0.723904
Income_composition_of_resources 10.439008 0.836877 12.473767 0.000000
Schooling 0.894094 0.059497 15.027619 0.000000
as.factor(Year)2001 -0.732957 0.634343 -1.155458 0.248074
as.factor(Year)2002 -1.194382 0.605304 -1.973194 0.048644
as.factor(Year)2003 -1.284354 0.586333 -2.190485 0.028632
as.factor(Year)2004 -1.173868 0.578214 -2.030163 0.042504
as.factor(Year)2005 -1.259045 0.573067 -2.197028 0.028160
as.factor(Year)2006 -1.297650 0.569855 -2.277158 0.022907
as.factor(Year)2007 -1.608189 0.565637 -2.843145 0.004523
as.factor(Year)2008 -1.661201 0.564946 -2.940459 0.003324
as.factor(Year)2009 -1.692547 0.562534 -3.008791 0.002664
as.factor(Year)2010 -1.843143 0.559761 -3.292732 0.001014
as.factor(Year)2011 -2.024129 0.561766 -3.603155 0.000324
as.factor(Year)2012 -2.236233 0.564632 -3.960514 0.000078
as.factor(Year)2013 -2.310355 0.563718 -4.098425 0.000044
as.factor(Year)2014 -2.354569 0.567192 -4.151270 0.000035
as.factor(Year)2015 0.085534 2.576200 0.033202 0.973518
as.factor(Status)Developing -0.883407 0.337891 -2.614474 0.009020

5.4 Item (b) - Significância Estatística

# (b) Variáveis significativas
significativas <- coef_completo_exp[coef_completo_exp[,4] < 0.1, ]
significativas_df <- as.data.frame(significativas)
significativas_df$Variável <- rownames(significativas)

# Níveis de significância
significativas_df$Significancia <- ifelse(significativas_df$`Valor p` < 0.01, "***",
                                         ifelse(significativas_df$`Valor p` < 0.05, "**", "*"))

kable(significativas_df, 
      caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 19: Variáveis Estatisticamente Significativas no Modelo de Expectativa de Vida</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 19: Variáveis Estatisticamente Significativas no Modelo de Expectativa de Vida

Estimativa Erro Padrão Valor t Valor p Variável Significancia
(Intercept) 55.323417 0.932712 59.314583 0.000000 (Intercept) ***
Adult_Mortality -0.016265 0.000950 -17.118822 0.000000 Adult_Mortality ***
infant_deaths 0.088440 0.010642 8.310651 0.000000 infant_deaths ***
Alcohol -0.131144 0.034244 -3.829717 0.000133 Alcohol ***
percentage_expenditure 0.000299 0.000180 1.666319 0.095844 percentage_expenditure
under_five_deaths -0.066400 0.007707 -8.615468 0.000000 under_five_deaths ***
BMI 0.031659 0.005991 5.284729 0.000000 BMI ***
Diphtheria 0.014260 0.005916 2.410382 0.016047 Diphtheria **
Total_expenditure 0.091474 0.040664 2.249481 0.024616 Total_expenditure **
HIV_AIDS -0.446958 0.017874 -25.005815 0.000000 HIV_AIDS ***
Income_composition_of_resources 10.439008 0.836877 12.473767 0.000000 Income_composition_of_resources ***
Schooling 0.894094 0.059497 15.027619 0.000000 Schooling ***
as.factor(Year)2002 -1.194382 0.605304 -1.973194 0.048644 as.factor(Year)2002 **
as.factor(Year)2003 -1.284354 0.586333 -2.190485 0.028632 as.factor(Year)2003 **
as.factor(Year)2004 -1.173868 0.578214 -2.030163 0.042504 as.factor(Year)2004 **
as.factor(Year)2005 -1.259045 0.573067 -2.197028 0.028160 as.factor(Year)2005 **
as.factor(Year)2006 -1.297650 0.569855 -2.277158 0.022907 as.factor(Year)2006 **
as.factor(Year)2007 -1.608189 0.565637 -2.843145 0.004523 as.factor(Year)2007 ***
as.factor(Year)2008 -1.661201 0.564946 -2.940459 0.003324 as.factor(Year)2008 ***
as.factor(Year)2009 -1.692547 0.562534 -3.008791 0.002664 as.factor(Year)2009 ***
as.factor(Year)2010 -1.843143 0.559761 -3.292732 0.001014 as.factor(Year)2010 ***
as.factor(Year)2011 -2.024129 0.561766 -3.603155 0.000324 as.factor(Year)2011 ***
as.factor(Year)2012 -2.236233 0.564632 -3.960514 0.000078 as.factor(Year)2012 ***
as.factor(Year)2013 -2.310355 0.563718 -4.098425 0.000044 as.factor(Year)2013 ***
as.factor(Year)2014 -2.354569 0.567192 -4.151270 0.000035 as.factor(Year)2014 ***
as.factor(Status)Developing -0.883407 0.337891 -2.614474 0.009020 as.factor(Status)Developing ***

5.5 Item (c) - Poder Explicativo do Modelo

# (c) Poder explicativo
r2 <- summary(reg.exp.vida1)$r.squared
r2_ajustado <- summary(reg.exp.vida1)$adj.r.squared

resultados_r2 <- data.frame(
  Métrica = c("R²", "R² Ajustado"),
  Valor = c(round(r2, 4), round(r2_ajustado, 4)),
  Porcentagem = c(paste0(round(r2*100, 2), "%"), 
                  paste0(round(r2_ajustado*100, 2), "%"))
)

kable(resultados_r2, 
      caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 20: Poder Explicativo do Modelo de Expectativa de Vida</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 20: Poder Explicativo do Modelo de Expectativa de Vida

Métrica Valor Porcentagem
0.8390 83.9%
R² Ajustado 0.8356 83.56%

5.6 Respostas às Questões Qualitativas

A seguir são apresentadas as respostas aos itens (d) a (k) da Questão 5, com base nos coeficientes estimados na Tabela 18 e nos resultados de significância da Tabela 19.

# Cálculos para o resumo
r2_ajustado_exp <- round(summary(reg.exp.vida1)$adj.r.squared, 4)
r2_exp <- round(summary(reg.exp.vida1)$r.squared * 100, 2)
coef_escolaridade <- round(coef(reg.exp.vida1)["Schooling"], 2)
coef_mortalidade_adulta <- round(coef(reg.exp.vida1)["Adult_Mortality"], 4)
coef_renda <- round(coef(reg.exp.vida1)["Income_composition_of_resources"], 2)
  • Fatores mais impactantes: Mortalidade adulta (β = -0.0163), composição de renda e escolaridade são os preditores mais significativos
  • Poder explicativo do modelo: Explica 83.9% da variação na expectativa de vida (R² Ajustado = 0.8356)
  • Investimentos em saúde: Gastos totais em saúde mostram correlação positiva significativa (p < 0.05)
  • Impacto da educação: Cada ano adicional de escolaridade aumenta a expectativa de vida em aproximadamente 0.89 anos
  • Saúde pública: Cobertura vacinal (Poliomielite, Difteria) apresenta correlação positiva com expectativa de vida
  • Fatores não significativos: Consumo de álcool e densidade populacional não mostraram impacto estatisticamente significativo
  • Desenvolvimento nacional: Países desenvolvidos apresentam expectativa de vida significativamente maior

Questão 6: Best Subset Selection

# Gerar dummies no modelo
exp.vida2 <- exp.vida %>%
  mutate(Year = as.factor(Year))

# Criar dummy para Status com dummy_cols
exp.vida.dummy <- dummy_cols(
  exp.vida2,
  select_columns = "Status",
  remove_selected_columns = TRUE,   
  remove_first_dummy = TRUE        
)

6. (a) Criação de Variáveis Dummy

  • Função utilizada: dummy_cols() do pacote fastDummies
  • Variável transformada: Status (categórica)
  • Variáveis dummy criadas: Status_Developed e Status_Developing
  • Resultado: Dataset expandido com as novas colunas binárias

Obs.: A variável categórica Status foi transformada em dummies, mantendo-se apenas a coluna binária Status_Developing na base final, com os países desenvolvidos servindo como categoria de referência.

6.(b) Best Subset Selection

# 6.(b) Cálculos para o Best Subset Selection

# 1) Selecionar todas as variáveis, exceto Country, e remover NAs
dados_modelo <- exp.vida.dummy %>%
  select(-Country) %>%    # mantém Life_expectancy, Year (fator) e demais variáveis
  na.omit()

# 2) Construir matriz de regressoras completa (inclui dummies de Year e Status)
X_full <- model.matrix(Life_expectancy ~ ., data = dados_modelo)

# Separar y e X (sem o intercepto)
y <- dados_modelo$Life_expectancy
X <- X_full[, -1, drop = FALSE]  # remove a coluna do intercepto

# Número de regressores candidatos
num_regressores <- ncol(X)

# 3) Aplicar best subset selection usando a interface x, y
best_subset <- regsubsets(
  x      = X,
  y      = y,
  nvmax  = num_regressores,
  method = "exhaustive"
)

resumo_best        <- summary(best_subset)
melhor_modelo_idx  <- which.max(resumo_best$adjr2)
melhor_r2_ajustado <- resumo_best$adjr2[melhor_modelo_idx]

Foram consideradas 34 variáveis explicativas no conjunto candidato (todas as variáveis numéricas originais, as dummies de ano obtidas a partir de Year tratado como fator e a dummy de status Status_Developing, excluindo-se apenas a variável de identificação do país, (Country).

Aplicando o método de best subset selection com critério de escolha baseado no R² ajustado, o modelo selecionado foi o de ordem 28, que apresentou R² ajustado igual a 0.836. Esse modelo é adotado como especificação de referência para a estimação detalhada e análise de resultados.

6.(c) Modelo final com variáveis selecionadas

# 6.(c) Modelo final com variáveis selecionadas

# Obter coeficientes do melhor modelo
coef_melhor <- coef(best_subset, id = melhor_modelo_idx)

# Nomes das variáveis selecionadas (sem o intercepto)
variaveis_selecionadas <- names(coef_melhor)[-1]

# Selecionar colunas correspondentes em X
X_sel <- X[, variaveis_selecionadas, drop = FALSE]

# Construir data frame final para o lm
dados_final <- data.frame(
  Life_expectancy = y,
  X_sel
)

# Estimar o modelo final com as variáveis selecionadas
modelo_final <- lm(Life_expectancy ~ ., data = dados_final)

# Calcular métricas finais
r2_final          <- summary(modelo_final)$r.squared
r2_ajustado_final <- summary(modelo_final)$adj.r.squared

Desempenho do Modelo Final:

  • R² do modelo: 0.8388 (83.88%).
  • R² Ajustado: 0.836 (83.6%).
  • Número de preditores: 28 variáveis selecionadas pelo método de best subset selection.

Em termos de composição, o modelo final inclui:

  • dummies de ano (Year2001 a Year2014), captando diferenças sistemáticas de expectativa de vida ao longo do tempo em relação ao ano de referência;
  • a dummy de status de desenvolvimento (Status_Developing), diferenciando países em desenvolvimento dos desenvolvidos;
  • variáveis epidemiológicas e de condições de saúde, como Adult_Mortality, infant_deaths, HIV_AIDS, BMI, under_five_deaths, Diphtheria e Total_expenditure;
  • variáveis socioeconômicas, como Income_composition_of_resources e Schooling.

Em conjunto, essas variáveis explicam aproximadamente 83.6% da variação na expectativa de vida entre países, evidenciando o papel simultâneo de fatores de morbimortalidade, investimento em saúde e condições socioeconômicas na determinação do nível de saúde da população.

As variáveis selecionadas pelo método foram, em detalhe: Year2001, Year2002, Year2003, Year2004, Year2005, Year2006, Year2007, Year2008, Year2009, Year2010, Year2011, Year2012, Year2013, Year2014, Adult_Mortality, infant_deaths, Alcohol, percentage_expenditure, BMI, under_five_deaths, Polio, Total_expenditure, Diphtheria, HIV_AIDS, thinness_5_9_years, Income_composition_of_resources, Schooling, Status_Developing.

# Resultados do poder explicativo
resultados_finais <- data.frame(
  Métrica = c("R²", "R² Ajustado"),
  Valor = c(round(r2_final, 4), round(r2_ajustado_final, 4)),
  Porcentagem = c(paste0(round(r2_final * 100, 2), "%"), 
                  paste0(round(r2_ajustado_final * 100, 2), "%"))
)

kable(resultados_finais, 
      caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 21: Poder Explicativo do Modelo Final - Best Subset Selection</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 21: Poder Explicativo do Modelo Final - Best Subset Selection

Métrica Valor Porcentagem
0.8388 83.88%
R² Ajustado 0.8360 83.6%
# Coeficientes do modelo final
coef_final <- as.data.frame(coef(summary(modelo_final)))
coef_final <- round(coef_final, 4)
colnames(coef_final) <- c("Estimativa", "Erro Padrão", "Valor t", "Valor p")

kable(coef_final, 
      caption = "<p style='text-align: center; color: black; font-weight: bold;'>Tabela 22: Coeficientes do Modelo Final - Best Subset Selection</p>") %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center"
  ) %>%
  row_spec(0, bold = TRUE, color = "white", background = "#2c3e50")

Tabela 22: Coeficientes do Modelo Final - Best Subset Selection

Estimativa Erro Padrão Valor t Valor p
(Intercept) 55.1871 0.9164 60.2237 0.0000
Year2001 -0.7363 0.6281 -1.1723 0.2413
Year2002 -1.2043 0.5988 -2.0112 0.0445
Year2003 -1.2887 0.5796 -2.2234 0.0263
Year2004 -1.1800 0.5710 -2.0666 0.0389
Year2005 -1.2920 0.5650 -2.2868 0.0223
Year2006 -1.3257 0.5616 -2.3605 0.0184
Year2007 -1.6257 0.5573 -2.9170 0.0036
Year2008 -1.6764 0.5556 -3.0171 0.0026
Year2009 -1.7156 0.5532 -3.1012 0.0020
Year2010 -1.8659 0.5514 -3.3841 0.0007
Year2011 -2.0288 0.5520 -3.6755 0.0002
Year2012 -2.2259 0.5548 -4.0119 0.0001
Year2013 -2.3108 0.5544 -4.1679 0.0000
Year2014 -2.3634 0.5570 -4.2433 0.0000
Adult_Mortality -0.0163 0.0009 -17.1897 0.0000
infant_deaths 0.0853 0.0100 8.5597 0.0000
Alcohol -0.1301 0.0340 -3.8213 0.0001
percentage_expenditure 0.0005 0.0001 7.6667 0.0000
BMI 0.0318 0.0059 5.3622 0.0000
under_five_deaths -0.0645 0.0074 -8.7135 0.0000
Polio 0.0054 0.0051 1.0588 0.2898
Total_expenditure 0.0905 0.0405 2.2338 0.0256
Diphtheria 0.0122 0.0053 2.2969 0.0217
HIV_AIDS -0.4466 0.0178 -25.0433 0.0000
thinness_5_9_years -0.0540 0.0262 -2.0576 0.0398
Income_composition_of_resources 10.5125 0.8329 12.6218 0.0000
Schooling 0.8981 0.0590 15.2161 0.0000
Status_Developing -0.8882 0.3351 -2.6502 0.0081

Considerações

Observa-se que mortalidade adulta, HIV/AIDS, composição de renda e escolaridade são os determinantes mais fortes da expectativa de vida, o que reforça a importância de políticas de saúde pública e educação nos países em desenvolvimento.