a) Apesar da multicolinearidade perfeita, os estimadores de MQO são MELNV. Falsa. A multicolinearidade perfeita ocorre quando há uma correlação exata (r = +1 ou -1) entre duas ou mais variáveis independentes, tornando impossível a obtenção dos coeficientes dos parâmetros por MQO. No entanto, na presença de multicolinearidade (mas não perfeita), os estimadores de MQO continuam sendo os Melhores Estimadores Lineares Não-Viesados (MELNV). Isso significa que eles são não viesados e têm a menor variância possível entre todos os estimadores lineares não viesados
b) Quando a autocorrelação está presente, os estimadores de MQO são tendenciosos e ineficientes. - VERDADEIRO. Na presença de autocorrelação, os estimadores de MQO continuam sendo MELNV (Melhores Estimadores Lineares Não-Viesados), ou seja, eles são não viesados e consistentes. No entanto, eles deixam de ser eficientes, o que significa que suas estimativas têm uma variabilidade maior do que o necessário.
c) O teste d de Durbin-Watson pressupõe que o termo do erro, εt, é homocedástico. - FALSA. O teste Durbin-Watson não faz suposições específicas sobre homocedasticidade dos erros. Ele é usado para detectar a presença de autocorrelação nos resíduos de uma análise de regressão.
d) A transformação de primeira diferença para eliminação da autocorrelação pressupõe que o coeficiente de autocorrelação ρ seja igual a -1. - FALSA. A transformação de primeira diferença é uma técnica comumente usada para lidar com a autocorrelação. Ela não pressupõe que o coeficiente de autocorrelação ρ seja igual a -1. Em vez disso, é usada para tornar o modelo autoregressivo estacionário, independentemente do valor específico de ρ.
e) Na presença de heterocedasticidade, os estimadores de MQO são tendenciosos e ineficientes. - Verdadeiro. Na presença de heterocedasticidade, os estimadores de Mínimos Quadrados Ordinários (MQO) são tendenciosos e ineficientes. Heterocedasticidade refere-se à situação em que a variância dos erros de um modelo de regressão não é constante, o que viola uma das suposições do modelo de regressão linear clássica. Isso pode levar a estimativas enviesadas e ineficientes dos parâmetros do modelo.
f) Na presença de heterocedasticidade, os testes t e F convencionais serão inválidos. - VERDADEIRO. A heterocedasticidade viola a 4ª hipótese para um modelo classico de regressão a qual supõe que a variância dos erros deve ser constante. Os testes t e F convencionais dependem da suposição de que os erros são homocedásticos para serem válidos. Se essa suposição for violada, como na presença de heterocedasticidade, esses testes podem levar a conclusões enganosas sobre a significância dos coeficientes de regressão
g) Se os resíduos estimados de uma regressão MQO exibirem um padrão sistemático, significa que a heterocedasticidade está presente nos dados. - FALSA. Se os resíduos estimados exibirem um padrão sistemático, isso pode indicar a presença de heterocedasticidade, pode indicar diversosos problemas, incluindo a heterocedascidade, autocorrelação, presença de outliers ou outro problema que influencie um padrão especifico nos dados.
h) Na presença de heterocedasticidade, o método usual de MQO sempre estima os erros padrão dos estimadores para mais FALSO - Na presença de heterocedasticidade, o método usual de Mínimos Quadrados Ordinários (MQO) tende a superestimar o erro padrão dos coeficientes, não subestimar. Isso ocorre porque o MQO assume homocedasticidade, ou seja, que os erros têm variância constante, mesmo quando eles não têm. A consequência disso é que o MQO não lida adequadamente com a heterocedasticidade, o que leva a erros padrão superestimados para os coeficientes. Para corrigir a superestimação dos erros padrão na presença de heterocedasticidade, é comum utilizar métodos robustos, como a correção de White, que produzem estimativas de erros padrão mais precisas.
#Pacotes Necessários:
#install.packages("nlme")
library("nlme")
## Warning: package 'nlme' was built under R version 4.3.1
#install.packages("lmtest")
library("lmtest")
## Warning: package 'lmtest' was built under R version 4.3.1
## Carregando pacotes exigidos: zoo
## Warning: package 'zoo' was built under R version 4.3.1
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
#install.packages("sandwich")
library("sandwich")
## Warning: package 'sandwich' was built under R version 4.3.1
#install.packages("Hmisc")
library("Hmisc")
## Warning: package 'Hmisc' was built under R version 4.3.1
##
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:base':
##
## format.pval, units
a) Estime os parâmetros do modelo utilizando os dados apresentados na tabela.
IPC <- c(53.8,56.9,60.6,65.2,72.6,82.4,90.9,96.5,99.6,103.9,107.6,109.6,113.6,118.3,124.0,130.7,136.2,140.3,144.5,148.2,152.4,156.9,160.5,163.0,166.6,172.2,177.1,179.9,184.0,188.9,195.3) #Vairável independente
PIB <- c(1638.3,1825.3,2030.9,2294.7,2563.3,2789.5,3128.4,3225.0,3536.7,3933.2,4220.3,4462.8,4739.5,5103.8,5484.4,5803.1,5995.9,6337.7,6657.4,7072.2,7397.7,7816.9,8304.3,8747.0,9268.4,9817.0,10128.0,10460.6,10960.8,11712.5,12455.8) #Variável independente
importacoes <- c(98185,124228,151907,176002,212007,249750,265067,247642,268901,332418,338088,368425,409765,447189,477665,498438,491020,536528,589394,668690,749374,803113,876470,917103,1029980,1224408,1145900,1164720,1260717,1472926,1677371) #Variável dependente
#modelo
modelo <- lm(log(importacoes)~(log(PIB)+log(IPC)))
summary(modelo)
##
## Call:
## lm(formula = log(importacoes) ~ (log(PIB) + log(IPC)))
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.127380 -0.038529 -0.008786 0.032021 0.191786
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.4360 0.2696 5.327 1.14e-05 ***
## log(PIB) 1.8308 0.1822 10.050 8.63e-11 ***
## log(IPC) -0.8443 0.2838 -2.975 0.00597 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.07089 on 28 degrees of freedom
## Multiple R-squared: 0.9919, Adjusted R-squared: 0.9913
## F-statistic: 1720 on 2 and 28 DF, p-value: < 2.2e-16
#Interpretando os resultados:
O modelo tem um ajuste bom para os seus dados, com um alto R-quadrado 99,13% e coeficientes significativos para as variáveis independentes. Isso sugere que as variáveis log(PIB) e log(IPC) são boas preditoras do log das importações.
b) Realize as seguintes regressões:
Com base nessas regressões, o que se pode dizer sobre a natureza da multicolinearidade nos dados?
print("1º modelo:")
## [1] "1º modelo:"
modelo_1 <- lm(log(PIB)~log(IPC))
summary(modelo_1)
##
## Call:
## lm(formula = log(PIB) ~ log(IPC))
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.15677 -0.05618 -0.01348 0.05893 0.10913
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.17012 0.16822 6.956 1.2e-07 ***
## log(IPC) 1.54618 0.03505 44.118 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.07226 on 29 degrees of freedom
## Multiple R-squared: 0.9853, Adjusted R-squared: 0.9848
## F-statistic: 1946 on 1 and 29 DF, p-value: < 2.2e-16
print("2º modelo:")
## [1] "2º modelo:"
modelo_2 <- lm(log(IPC)~log(PIB))
summary(modelo_2)
##
## Call:
## lm(formula = log(IPC) ~ log(PIB))
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.078471 -0.035517 0.009103 0.032714 0.096733
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.67542 0.12406 -5.444 7.38e-06 ***
## log(PIB) 0.63726 0.01444 44.118 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.04639 on 29 degrees of freedom
## Multiple R-squared: 0.9853, Adjusted R-squared: 0.9848
## F-statistic: 1946 on 1 and 29 DF, p-value: < 2.2e-16
#Interpretando os resultados:
o PIB quanto o IPC são significativos a 1%, indicando que ambos têm um efeito significativo sobre a variável dependente em seus respectivos modelos. Além disso, os valores de R2 são altos e semelhantes em ambos os modelos, sugerindo que uma grande proporção da variância na variável dependente é explicada pelos modelos. No entanto, a presença de multicolinearidade pode inflar a variância dos coeficientes de regressão, tornando-os instáveis e difíceis de interpretar. Além disso, pode levar a um viés na estimação dos coeficientes de regressão e na realização de testes de hipóteses.
c) Suponha que haja multicolinearidade nos dados, mas β1 e β2 sejam individualmente significativos ao nível de 5% e que o teste F geral também seja significativo. Nesse caso, deveríamos ficar preocupados com o problema da colinearidade? Sim, devemos ficar preocupados com o problema da multicolinearidade, mesmo que os coeficientes individuais (β1 e β2) sejam significativos ao nível de 5% e o teste F geral também seja significativo. A multicolinearidade é um problema que afeta a interpretação dos coeficientes, a estabilidade das estimativas e a capacidade do modelo de fazer previsões precisas, independentemente da significância estatística dos coeficientes individuais ou do teste F geral.
a) Trace um gráfico dos salários médios contra os anos de exercício da atividade (como uma medida dos anos de experiência). Para traçar o gráfico, suponha que os salários médios referem-se ao ponto médio dos anos em ordem.Assim, o salário de $124.578 na ordem 4-5 refere-se aos 4,5 anos na ordem e assim por diante. Para o último grupo, suponha que a ordem seja 33-35. Interprete o comportamento dos dados pelo gráfico gerado.
Salario_medio <- c(69000, 70500, 74050, 82600, 91439, 83127, 84700, 82601, 93286, 90400, 98200, 100000, 99662, 116012, 85200)
# ponto médio dos anos
anos_experiencia <- c(0.5, 2.5, 4.5, 6.5, 8.5, 10.5, 12.5, 14.5, 16.5, 18.5, 20.5, 23, 26, 30, 33.5)
# gráfico de dispersão
plot(anos_experiencia, Salario_medio, type = "o", pch = 19, col = "black", xlab = "Anos de Experiência", ylab = "Salário Médio (US$)", main = "Salário Médio em Função dos Anos de Experiência")
# Adicionando rótulos aos pontos
text(anos_experiencia, Salario_medio, labels = Salario_medio, pos = 3, cex = 0.6, col = "blue")
b) Considere os seguintes modelos de regressão:
print("Regressão (1):")
## [1] "Regressão (1):"
reg_1 <- lm(Salario_medio~(anos_experiencia))
summary(reg_1)
##
## Call:
## lm(formula = Salario_medio ~ (anos_experiencia))
##
## Residuals:
## Min 1Q Median 3Q Max
## -20474.9 -4237.1 -398.6 4209.5 13707.6
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 73414.0 3912.4 18.76 8.48e-11 ***
## anos_experiencia 963.0 216.9 4.44 0.000667 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 8158 on 13 degrees of freedom
## Multiple R-squared: 0.6026, Adjusted R-squared: 0.572
## F-statistic: 19.71 on 1 and 13 DF, p-value: 0.0006672
print("Regressão (2):")
## [1] "Regressão (2):"
anos_experiencia_quad <- anos_experiencia^2
reg_2 <- lm(Salario_medio~(anos_experiencia+anos_experiencia_quad))
summary(reg_2)
##
## Call:
## lm(formula = Salario_medio ~ (anos_experiencia + anos_experiencia_quad))
##
## Residuals:
## Min 1Q Median 3Q Max
## -13044.3 -3275.8 264.1 2138.0 17013.9
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 66557.47 5145.99 12.934 2.09e-08 ***
## anos_experiencia 2242.58 716.53 3.130 0.0087 **
## anos_experiencia_quad -38.71 20.82 -1.859 0.0877 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 7482 on 12 degrees of freedom
## Multiple R-squared: 0.6914, Adjusted R-squared: 0.64
## F-statistic: 13.44 on 2 and 12 DF, p-value: 0.0008633
# Interpretação:
A regressão (1) é mais adequada aos dados. Isso ocorre porque, embora a regressão (2) tenha um R² mais alto, o coeficiente anos de experiencia ao quadrado não é significativo a 5%, o que indica que a relação quadrática entre anos de experiência e salário médio não é estatisticamente significativa. Portanto, é mais apropriado usar o modelo mais simples da regressão (1), onde a variável anos de experiência é significativa para explicar o salário médio.
c) Utilize os testes de Breush-pagan e White para verificar se os modelos (1) e (2) apresentam heterocedasticidade.Use um nível de significância de 5%.teste de Breush Pagan
#carregando pacote necessário:
#install.packages("lmtest")
library(lmtest)
print("Regressão 1:")
## [1] "Regressão 1:"
bptest(reg_1)
##
## studentized Breusch-Pagan test
##
## data: reg_1
## BP = 5.1372, df = 1, p-value = 0.02342
print("Regressão 2")
## [1] "Regressão 2"
bptest(reg_2)
##
## studentized Breusch-Pagan test
##
## data: reg_2
## BP = 7.6873, df = 2, p-value = 0.02142
Teste de White
#regressão auxiliar:
residuo_chapeu_1 = reg_1$residuals
reg_aux1 = lm(residuo_chapeu_1^2~anos_experiencia)
resumo_aux1 = summary(reg_aux1)
resumo_aux1
##
## Call:
## lm(formula = residuo_chapeu_1^2 ~ anos_experiencia)
##
## Residuals:
## Min 1Q Median 3Q Max
## -126309483 -58442805 -27011561 43618032 242771526
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -40979466 44988884 -0.911 0.3789
## anos_experiencia 6490471 2494256 2.602 0.0219 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 93810000 on 13 degrees of freedom
## Multiple R-squared: 0.3425, Adjusted R-squared: 0.2919
## F-statistic: 6.771 on 1 and 13 DF, p-value: 0.02192
#estatística do teste:
n <- length(anos_experiencia)
R2aux1 = resumo_aux1$r.squared
Qui_calc = n*R2aux1
Qui_calc
## [1] 5.137207
# nivel de confiança:
confianca = 0.95
graus_liberdade = 1
#valor tabelado da Qui-Quadrado (2):
Qui_tab = qchisq(confianca,graus_liberdade)
Qui_tab
## [1] 3.841459
#regressão auxiliar:
residuo_chapeu_2 = reg_2$residuals
reg_aux2 = lm(residuo_chapeu_1^2~(anos_experiencia+anos_experiencia_quad))
resumo_aux2 = summary(reg_aux2)
resumo_aux2
##
## Call:
## lm(formula = residuo_chapeu_1^2 ~ (anos_experiencia + anos_experiencia_quad))
##
## Residuals:
## Min 1Q Median 3Q Max
## -121683016 -24175458 -8155914 19130595 105638562
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 88034160 42544972 2.069 0.06077 .
## anos_experiencia -17585958 5924014 -2.969 0.01173 *
## anos_experiencia_quad 728324 172159 4.231 0.00117 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 61860000 on 12 degrees of freedom
## Multiple R-squared: 0.7361, Adjusted R-squared: 0.6921
## F-statistic: 16.73 on 2 and 12 DF, p-value: 0.0003379
#estatística do teste:
n <- length(anos_experiencia)
R2aux2 = resumo_aux2$r.squared
Qui_calc_2 = n*R2aux2
Qui_calc_2
## [1] 11.04134
# nivel de confiança:
confianca = 0.95
graus_liberdade_2 = 2
#valor tabelado da Qui-Quadrado (2):
Qui_tab_2 = qchisq(confianca,graus_liberdade_2)
Qui_tab_2
## [1] 5.991465
Conclusão: - Em ambos os modelos o teste de Breush Pagan indicou presença de heterocedaticidade, os p-valores foram menores que o nivel de signficância de 5%, logo rejeita se a hipótese nula de homocedasticidade das variâncias dos resíduos. O teste de White também confirmou a presença de heterocedasticidade pois o qui-quadrado calculado foi maior que o valor crítico em ambos os modelos. Portanto, a variãncia dos residuos das regressões 1 e 2 não é constante em relação as variáveis independentes anos de experiência e anos de experiência ao quadrado.
d) Se for detectada heterocedasticidade nos modelos (1) e (2), como transformaríamos os dados de modo que nos modelos transformados não houvesse heterocedasticidade?
Se a heterocedasticidade for detectada nos modelos, várias transformações podem ser aplicadas aos dados para tentar estabilizar as variâncias dos resíduos:
Transformação logarítmica: Se os dados seguem uma tendência exponencial, a aplicação de uma transformação logarítmica pode ajudar a estabilizar a variância.
Transformação Box-Cox: Esta é uma família de transformações paramétricas que pode ser usada para corrigir problemas de não-normalidade e heterocedasticidade.
Transformações de potência: Similar à transformação Box-Cox, as transformações de potência podem ser usadas para corrigir a heterocedasticidade. Isso pode incluir tomar a raiz quadrada, o cubo, ou outras potências dos dados.
Regressão ponderada: Se você conhece a função que descreve a heterocedasticidade, você pode ponderar as observações por esta função na regressão.
e) Estime os erros padrão robustos de White para os modelos (1) e (2). Compare os resultados obtidos dos erros padrão dos coeficientes de ambos os modelos. Qual dos dois modelos você escolheria agora? Justifique.
# Carregando pacote necessário:
#install.packages("sandwich")
library(sandwich)
# Erros padrão robustos de White para o modelo 1
robust_reg_1 <- coeftest(reg_1, vcov = vcovHC)
print("Modelo 1 - Erros padrão robustos de White:")
## [1] "Modelo 1 - Erros padrão robustos de White:"
print(robust_reg_1)
##
## t test of coefficients:
##
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 73414.01 4938.41 14.8659 1.542e-09 ***
## anos_experiencia 963.01 437.88 2.1993 0.04656 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# Erros padrão robustos de White para o modelo 2
robust_reg_2 <- coeftest(reg_2, vcov = vcovHC)
print("Modelo 2 - Erros padrão robustos de White:")
## [1] "Modelo 2 - Erros padrão robustos de White:"
print(robust_reg_2)
##
## t test of coefficients:
##
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 66557.467 4672.902 14.2433 7.014e-09 ***
## anos_experiencia 2242.575 1222.944 1.8338 0.0916 .
## anos_experiencia_quad -38.707 50.586 -0.7652 0.4590
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# Interpretando os resultados:
Com base nos resultados obtidos dos erros padrão robustos de White, o modelo 1 continua sendo o mais adequado. No modelo 1, o coeficiente para anos de experiência foi significativo a 5%. No modelo 2, nem o coeficiente para anos de experiência nem para o quadrado dos anos de experiência foram significativos. Portanto a regressão 1, que modela o salário médio como uma função linear dos anos de experiência, é o modelo mais adequado para esses dados.
a) Os termos do erro são autocorrelacionados?
# inserindo as variaveis :
despesas_consumo <- c(282.4,288.1,290.0,307.3,316.1,322.5,338.4,353.3,373.7,397.7,418.1,430.1,452.7,469.1,476.9)
tempo <- c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)
# ajustando o modelo de regressão:
mod <- lm(despesas_consumo~tempo)
d <- dwtest(mod)
erros <- resid(mod)
# Gráfico de dispersão dos resíduos em função do tempo
plot(tempo, erros, type = "o", xlab = "Tempo", ylab = "Resíduos estimados",
main = "Dispersão dos Resíduos em Função do Tempo.", cex = 0.5, pch = 10, cex.main = 0.95, col = "blue")
grid()
# Arredondar os valores em 'erros' para 2 casas decimais
erros_arredondados <- round(erros, 2)
# Adicionar rótulos às coordenadas desejadas com valores arredondados
text(tempo, erros, labels = erros_arredondados, pos = 4, cex = 0.6, col = "black")
A representação gráfica da dispersão dos residuos em função da variável independente do modelo sugere a presença de autocorrelação entre os resíduos.
b) Caso os termos do erro sejam autocorrelacionados, estime ρ por meio de:
1. Estatística d de Durbin-Watson.
2. Método de Theil-Nagar
c)Utilizando o ρ estimado (mais adequado) no item anterior, transforme os dados e realize uma regressão com os dados transformados. A um nível de 5% de significância, foi resolvido o problema da autocorrelação?