Motivação

Para o conjunto de dados anterior, o gráfico de dispersão é dado por:

require(ggplot2)
## Loading required package: ggplot2
ggplot(Reglin) +
  
  geom_point(aes(x = Temperatura, y = Dureza),
             size = 3, color = "blue") +
  
  labs(title = 'Relação entre Dureza e Temperatura',
       y = 'Dureza',
       x = 'Temperatura') +
  
  theme_classic()

Modelo estatístico

\[Y_i=\beta_0+\beta_1 x_i+\varepsilon_i,~~~\mbox{para }~i=1,\ldots,n, \]

em que substituímos Xi por xi uma vez que Xi é uma variável determinística (constante conhecida).

Neste modelo,

Interpretação dos parâmetros do modelo

O parâmetro \(\beta_0\) é chamado intercepto ou coeficiente linear e representa o ponto em que a reta regressora corta o eixo dos y’s, quando x=0.

Suposições para o modelo

\[E(Y_{i}) = E(\beta_{0}+\beta_{1}x_{i}+\epsilon_{i})=\beta_{0}+\beta_{1}x_{i}+E(\epsilon_{i})=\beta_{0}+\beta_{1}x_{i}\]

e portanto, a função de regressão para o modelo 1.1.1 é dada por:

\[E[Y\mid x]=\beta_{0}+\beta_{1}x\]

\[Var(\varepsilon_i)= E(\varepsilon_i^2) - [E(\varepsilon_i)]^2 = E(\varepsilon_i^2) = \sigma^2, \] isto implica em:

\[Var(Y_i)= E[Y_i - E(Y_i|x_i)]^2 = E(\varepsilon_i^2) = \sigma^2.\]
- Neste caso, dizemos que o erro é homocedástico (tem variância constante);

\[Cov(\varepsilon_i,\varepsilon_j)= E(\varepsilon_i,\varepsilon_j) - E(\varepsilon_i)E(\varepsilon_j) = E(\varepsilon_i,\varepsilon_j) = 0, \quad \text{para} \quad i \neq j;\]

Método dos Mínimos Quadrados

\[L=\displaystyle\sum^n_{i=1}\varepsilon_i^2=\sum^n_{i=1}[Y_i-\beta_0-\beta_1 x_i]^2.\]

\[\widehat{\beta}_0=\bar{Y}-\widehat{\beta}_1\bar{x}\]

\[\widehat{\beta}_{1}=\dfrac{\displaystyle\sum\limits_{i=1}^n(x_i - \bar{x})(Y_i - \bar{Y})}{\displaystyle\sum\limits_{i=1}^n (x_i -\bar{x})^2}=\dfrac{\displaystyle\sum\limits_{i=1}^n(x_i - \bar{x})Y_i}{\displaystyle\sum\limits_{i=1}^n (x_i - \bar{x})x_i}=\dfrac{\displaystyle\sum\limits_{i=1}^n x_i Y_i-n\bar{x}\bar{Y}}{\displaystyle\sum\limits_{i=1}^n x_i^2-n\bar{x}^2}.\]

\[\widehat{Y}=\widehat{\beta}_{0}+\widehat{\beta}_{1}x\]

Resíduos

\[e_{i}=Y_{i}-\widehat{Y}_{i}=Y_{i}-(\widehat\beta_{0}+\widehat\beta_{1}x_{i}),\]
Essa medida é importante já que por meio dela verificamos o ajuste do modelo.

Ajuste no R

mod = lm(Dureza ~ Temperatura,
         data=Reglin)

mod
## 
## Call:
## lm(formula = Dureza ~ Temperatura, data = Reglin)
## 
## Coefficients:
## (Intercept)  Temperatura  
##     364.180       -1.032

Logo, temos os resultados:

Interpretação: aumentando uma unidade na temperatura, espera-se que a dureza em HB diminua em 1,03200.

TESTES E INTERVALOS DE CONFIANÇA PARA OS PARÂMETROS

Inferência para \(\beta_0\)

\[\widehat{\beta}_0 \sim N \left(\beta_{0},~ \sigma^2\left[\dfrac{1}{n}+\dfrac{\bar{x}^2}{\displaystyle\sum\limits_{i=1}^n(x_i-\bar{x})^2}\right]\right).\]

Assim, sob \(\mbox{H}_0\) temos que:

\[N_0=\dfrac{\widehat{\beta}_0-\beta_{00}}{\sqrt{Var(\widehat{\beta}_0)}}~~\sim N(0,1).\]

  • Temos a hipótese: \[ H_0: \beta_0 = \beta_{00} \\ H_1: \beta_0 \neq \beta_{00} \]

\[T=\dfrac{N_0}{\sqrt{\dfrac{\chi}{n-2}}}=\dfrac{\widehat{\beta}_0-\beta_{00}}{\sqrt{QME\left(\dfrac{1}{n}+\dfrac{\bar{x}^2}{\displaystyle\sum\limits_{i=1}^n(x_i-\bar{x})^2}\right)}}~~~\sim t_{(n-2)},\]

  • ou seja, T tem distribuição t de Student com n-2 graus de liberdade. Logo, intervalos de confiança e testes a respeito de $ _0 $ podem ser realizados utilizando a distribuição t.

Inferência para \(\beta_1\)

  • Inferência sobre \(\beta_1\) é mais frequente já que por meio deste parâmetro temos um indicativo da existência ou não de associação linear entre as variáveis envolvidas.

  • Similarmente ao parâmetro \(\beta_0\), consideremos as hipóteses

\[H_0: \beta_1 = \beta_{10} \\ H_1: \beta_1 \neq \beta_{10}\]

  • no qual \(\beta_{10}\) é uma constante. Em geral, consideramos \(\beta_{10}=0\).

Assim, sob \(\mbox{H}_0\) segue que:

\[N_1=\dfrac{\widehat{\beta}_1-\beta_{10}}{\sqrt{Var(\widehat{\beta}_1)}}~~\sim N(0;1).\]

Logo,

\[T=\dfrac{N_1}{\sqrt{\dfrac{\chi}{n-2}}}=\dfrac{\widehat{\beta}_1 -\beta_{10}}{\sqrt{\dfrac{QME}{\displaystyle\sum\limits_{i=1}^n(x_i-\bar{x})^2}}}~~~ \sim ~~t_{(n-2)},\]

  • ou seja, T tem distribuição t de Student com n-2 graus de liberdade.

  • Logo, intervalos de confiança e testes a respeito de \(\beta_1\) podem ser realizados utilizando a distribuição t.

Obtendo estas estimativas no programa R

Obtendo o intervalo de confiança para os parâmetros:

confint.lm(mod)
##                  2.5 %      97.5 %
## (Intercept) 335.260963 393.0990373
## Temperatura  -1.159078  -0.9049217

Teste de hipóteses

out = summary(mod)
out$coefficients
##             Estimate  Std. Error   t value     Pr(>|t|)
## (Intercept)  364.180 13.76492644  26.45710 7.339794e-16
## Temperatura   -1.032  0.06048691 -17.06154 1.467504e-12
  • Para \(\beta_0\) o valor p foi de 7.339794310^{-16}.

  • Para \(\beta_1\) o valor p foi de 1.467504410^{-12}.

  • Em ambos, o valor p foi inferior ao nível de \(5\%\) de significância, indicando que estes parâmetros são estatísticamente significativos ao modelo ajustado.

Análise de variância

No caso de um modelo linear simples, no qual temos apenas uma variável explicativa, testar a significância do modelo corresponde ao seguinte teste de hipóteses

\[ H_0: \beta_1 = 0 \\ H_1: \beta_1 \neq 0 \]

Teste F

  • Considerando o Modelo de Regressão Linear Simples, a siginificância do modelo linear pode ser avaliada através do do teste de hipóteses anterior.

  • Se não rejeitamos \(\mbox{H}_0\), concluímos que não existe relação linear significativa entre as variáveis explicativa (x) e dependente (Y).

  • A estratégia para testarmos a hipótese \(\mbox{H}_0\) consiste em compararmos o quadrado médio da regressão com o quadrado médio dos erros, pois sob \(\mbox{H}_0\), ambos quadrados médios são estimadores de momentos para o parâmetro \(\sigma^2\).

  • Na tabela a seguir apresentamos a tabela ANOVA com a Estatística do Teste F.

  • Como \(F_0\) é a divisão de duas variáveis qui-quadrado, cada uma dividida pelos seus graus de liberdade e são independentes, segue que \(F_0\) tem distribuição F com \(1\) grau de liberdade no numerador e \(n-2\) graus de liberdade no denominador, denotada por \(F_{(1,n-2)}\).

ANOVA no R

anova(mod)
## Analysis of Variance Table
## 
## Response: Dureza
##             Df Sum Sq Mean Sq F value    Pr(>F)    
## Temperatura  1 665.64  665.64   291.1 1.468e-12 ***
## Residuals   18  41.16    2.29                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Pela ANOVA o valor p foi de \(1,467504\cdot 10^{-12}\), indicando que ao nível de \(5\%\) de significância concluímos que a variável explicativa tem correlação com a variável resposta.

Coeficiente de Determinação (\(R^2\))

\[R^2=\dfrac{SQR}{SQT}=1-\dfrac{SQE}{SQT}=\dfrac{\widehat\beta_1\displaystyle\sum\limits_{i=1}^n(x_i-\bar{x})Y_i}{\displaystyle\sum\limits_{i=1}^n(Y_i-\bar{Y})^2},\] - Note que \(0 \leq R^2 \leq 1\).

\[R^2=\dfrac{665,64}{665,64+41,16}=0,9418\] No R

out$r.squared
## [1] 0.9417657

Logo, \(94,18\%\) de toda a variabilidade da variável Y (Dureza) é explica pelo modelo ajustado.

Coeficiente de Determinação Ajustado

Para evitar dificuldades na interpretação de \(R^2\), alguns estatísticos preferem usar o \(R_a^2\) (\(R^2\) ajustado), definido para uma equação com 2 coeficientes como:

\[R^2_a=1-\left(\frac{n-1}{n-2}\right)(1-R^2).\]
Assim como o Coeficiente de Determinação \(R^2\), quanto maior \(R_a^2\), mais a variável resposta é explicada pela regressora X.

\[R^2_a=1-\left(\frac{20-1}{20-2}\right)(1-0,9417657) = 0,9385\]

Gráfico de Ajuste

require(ggplot2)

ggplot(Reglin, aes(x = Temperatura, y = Dureza)) +
  
  geom_point() +
  
  labs(title = 'Relação entre Dureza e Temperatura',
       y = 'Dureza',
       x = 'Temperatura') +
  
  geom_smooth(method="lm") +
  
  theme_classic()

Regressão Linear Múltipla

Um Exemplo: Empresa de Transporte TRAVEL

  • Como uma ilustração da análise de regressão múltipla, vamos considerar um problema enfrentado pela Empresa de Transporte TRAVEL, uma empresa de transporte independente no sul da Califórnia.

  • Uma grande parte dos negócios da TRAVEL envolve entregas em toda a sua área local. Para desenvolver melhores horários de trabalho, os gerentes querem estimar o tempo total de viagem diário de seus motoristas.

Os gerentes acreditavam que o tempo total de viagem diário (Y) estaria intimamente relacionado ao número de milhas percorridas nas entregas diárias (\(x_1\)) e o número de entregas (\(x_2\)).

  • Uma amostra aleatória simples de 10 entregadores forneceu os dados mostrados na Tabela a seguir.

  • Entrar com os dados por meio de uma planilha
    Entregador Distancia Entregas Tempo
    1 100 4 9.3
    2 50 3 4.8
    3 100 4 8.9
    4 100 2 6.5
    5 50 2 4.2
    6 80 2 6.2
    7 75 3 7.4
    8 65 4 6.0
    9 90 3 7.6
    10 90 2 6.1
  • Antes de ajustar um modelos, devemos realizar algumas análises exploratória. Uma importante medida é a de correlação linear entre as variáveis.

require(corrgram)
## Loading required package: corrgram
x <- RegMult[,-1] #Excluindo a coluna "Entregador"
corrgram(x, 
         #upper.panel=panel.cor,
         upper.panel=panel.conf,
         cex.labels=1.5, cex=1.2)

Modelo estatístico

Assim, definimos o modelo de regressão linear múltipla dado por:

\[Y=\beta_0+\beta_1x_1+\beta_2x_2+\varepsilon,\]

Interpretação dos parâmetros do modelo

Suposições do modelo

As suposição na regressão múltipla são as mesmas feitas na regressão linear simples.

ANOVA

Teste F

  • Em problemas de regressão linear múltipla, certos testes de hipóteses sobre os parâmetros do modelo são úteis para verificar a “adequabilidade” do modelo.

Teste para significância da regressão

O teste para significância da regressão é um teste para determinar se há uma relação linear entre a variável resposta \(Y\) e algumas das variáveis regressora \(x_1,x_2,\dots,x_p\).

  • Consideremos as hipóteses:

\[ H_0: \beta_1 = \beta_2 = \cdots = \beta_p = 0 \\ H_1: \beta_j \neq 0, \mbox{ para qualquer } j = 1, 2, \ldots, p. \]

  • Se rejeitamos \(H_0\), temos que ao menos uma variável explicativa \(x_1,x_2,\dots,x_p\) contribui significativamente para o modelo.

  • Sob \(H_0,\) temos:

\[\dfrac{SQR}{\sigma^2} \sim \chi^2_{(p)}~~~~\mbox{e que}~~~~\dfrac{SQE}{\sigma^2} \sim \chi^2_{(n-p-1)}.\]

  • Além disso, temos que \(SQR\) e \(SQE\) são independentes.

  • Logo, concluímos sob \(H_0\) que

\[F_0=\dfrac{\dfrac{SQR}{p}}{\dfrac{SQE}{n-p-1}}= \dfrac{QMR}{QME}~\sim ~F_{(p ; \, n-p-1)}.\]

Portanto, rejeitamos \(H_0\) se \(F_0 > F_{(1-\alpha ; \, p ; \, n-p-1)}\) e se \(\mbox{valor p} =P[F_{p;n-p-1} > F_0] < \alpha,\) em que \(\alpha\) é o nível de significância considerado. Geralmente adotamos \(\alpha=5\%\).

Vamos ao R

mod1 = lm(Tempo ~ Distancia + Entregas,
          data = RegMult)
  • ANOVA
anova(mod1)
## Analysis of Variance Table
## 
## Response: Tempo
##           Df  Sum Sq Mean Sq F value   Pr(>F)    
## Distancia  1 15.8713 15.8713  48.316 0.000221 ***
## Entregas   1  5.7293  5.7293  17.441 0.004157 ** 
## Residuals  7  2.2994  0.3285                     
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

O valor p, é p para “Entregas” foi obitido por:

pf(17.441, 1, 7, lower.tail = FALSE)
## [1] 0.004156668

O cálculo da estatística F: \[ F_0 = (15.8713+5.7293)/0.3285 = 65.75525 \]

  • Assim, o valor p para a regressão é dado por:
pf(65.75525, 2, 7, lower.tail = FALSE)
## [1] 2.901708e-05

Como o valor p 8.359770710^{-5} foi menor do que \(5\%\) de significãncia, tem-se que há pelo menos, uma variável explicativa estatisticamente significativa no modelo ajustado.

Estimativas os parâmetros:

summary(mod1)
## 
## Call:
## lm(formula = Tempo ~ Distancia + Entregas, data = RegMult)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.79875 -0.32477  0.06333  0.29739  0.91333 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -0.868701   0.951548  -0.913 0.391634    
## Distancia    0.061135   0.009888   6.182 0.000453 ***
## Entregas     0.923425   0.221113   4.176 0.004157 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5731 on 7 degrees of freedom
## Multiple R-squared:  0.9038, Adjusted R-squared:  0.8763 
## F-statistic: 32.88 on 2 and 7 DF,  p-value: 0.0002762

Coeficiente de Determinação

Em regressão linear múltipla, os estatísticos sugerem que deva-se utilizar o coeficiente de determinação ajustado, uma vez que este leva em consideração a quantidade de variáveis no modelo: O coeficiente de determinação ajustado é definido como

\[R^2_a=1-\left(\frac{n-1}{n-p}\right)(1-R^2).\]

summary(mod1)
## 
## Call:
## lm(formula = Tempo ~ Distancia + Entregas, data = RegMult)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.79875 -0.32477  0.06333  0.29739  0.91333 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -0.868701   0.951548  -0.913 0.391634    
## Distancia    0.061135   0.009888   6.182 0.000453 ***
## Entregas     0.923425   0.221113   4.176 0.004157 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5731 on 7 degrees of freedom
## Multiple R-squared:  0.9038, Adjusted R-squared:  0.8763 
## F-statistic: 32.88 on 2 and 7 DF,  p-value: 0.0002762

No exemplo da Empresa Travel, o coeficiente de determinação ajustado foi de 0,8763, indicando que \(87,63\%\) da variabilidade do tempo de entrega é aplicada pelo modelo ajustado.

Análise de Resíduo

\[ e_i=Y_i-\widehat{Y}_i=Y_i-\widehat{\beta}_0-\widehat{\beta}_1x_{1i}-\dots-\widehat{\beta}_p x_{pi}\quad i=1,\dots,n.\]

\[Y = X \beta + \varepsilon,\]

  1. \(\varepsilon_i\) e \(\varepsilon_j\) são independentes \((i\neq j)\);

  2. \(Var(\varepsilon_i) = \sigma^2\) (constante);

  3. \(\varepsilon_i \sim N(0,\sigma^2)\) (normalidade);

Técnicas gráficas para análise dos resíduos são:

  1. Gráfico dos resíduos versus valores ajustados: verifica a homoscedasticidade do modelo, isto é, \(\sigma^2\) constante.
plot(mod1,1)

O ideal é que os pontos estejam distribuídos em torno de uma média 0.

  1. Gráfico dos resíduos versus a ordem de coleta dos dados: avaliar a hipótese de independência dos dados.
plot(mod1$residuals)

Espera-se que os pontos estejam distribuídos de forma aleatória.

  1. Papel de probabilidade normal: verificar a normalidade dos dados.
plot(mod1, 2)

O ideal é que os pontos estejam próximo da linha tracejada.

require(car)
## Loading required package: car
## Loading required package: carData
qqPlot(mod1)

## [1] 7 8

Espera-se que “boa parte” dos pontos pertençam a região (bandas) de confiança.

Para a análise formal dos resíduos, podemos realizar os seguintes testes:

shapiro.test(mod1$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  mod1$residuals
## W = 0.97848, p-value = 0.9565

Como o valor p 0.9564955 foi maior do que \(5\%\) de significãncia, temos a não rejeição de \(H_0\). Assim, a suposição de normalidade foi atendida.

durbinWatsonTest(mod1)
##  lag Autocorrelation D-W Statistic p-value
##    1       -0.317467      2.515204   0.404
##  Alternative hypothesis: rho != 0

Como o valor p 0.378 foi maior do que \(5\%\) de significãncia, temos a não rejeição de \(H_0\). Assim, a suposição de independência foi atendida.

\[ H_0: \mbox{Os resíduos são homoscedásticos} \\ H_1: \mbox{Os resíduos não são homoscedásticos} \]

require(lmtest)
## Loading required package: lmtest
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
bptest(mod1)
## 
##  studentized Breusch-Pagan test
## 
## data:  mod1
## BP = 0.36899, df = 2, p-value = 0.8315

Como o valor p 0.8315252 foi maior do que \(5\%\) de significãncia, temos a não rejeição de \(H_0\). Assim, a suposição de homocedasticidade foi atendida.