Os modelos lineares são a base para o entendimento de todos os modelos mais complexos que iremos abordar durante este curso. Caso ainda não tenha feito o roteiro Modelos Lineares Simples I, retorne a ele.
Os modelos lineares podem ser analisados através do método de partição de variância que aprendemos no roteiro de Princípios da Estatística Frequentista. Caso não tenha sedimentado bem o conceito, retorne ao roteiro e reveja a videaula, isso será importante para acompanhar o restante deste roteiro. Assim como na análise de variância clássica, podemos particionar a variação total existente nos dados de uma variável preditora contínua nas porções explicadas e não explicadas pelo modelo linear. Assista ao vídeo abaixo para entender como se dá o particionamento da variação no caso de um modelo linear simples e como essa partição é análoga ao que acontece em uma análise de variância.
A nossa próxima atividade usa os dados de crescimento de lagartas submetidas a dietas de folhas com diferentes concentrações de taninos presente no livro The R Book (Crawley, 2012). São apenas duas variáveis, growth, o crescimento da lagarta, e tannins, a concentração de taninos. O objetivo é verificar se há relação entre o crescimento da lagarta e a concentração de taninos da dieta.
Para o cálculo dos parâmetros da reta use as funções do Excel:
Predito pelo modelo
A predição do modelo é calculada pela equação da reta:
$$ \hat{y_i} = a + b * x_i $$
a = intercepto
b = inclinação
$x_i$ = valor de x da observação i
$\hat{y_i}$ = valor predito para a observação i
soma dos desvios quadráticos explicada pelo modelo
A partir da partição da variação dos desvios quadráticos explicado pela preditora (tannin
) e não explicado (residuos
) podemos montar uma tabela de anova da mesma forma que fizemos no tutorial Testes Clássicos: ANOVA
soma quadrática
, graus de liberdade
, média quadrática
, F
e p-valor
Modelo
, Resíduo
, Total
$$SS_{TOTAL} = \sum_{i=1}^n (y_{i} - \bar{y})^2$$
$$SS_{res} = \sum_{i=1}^n (y_{i} - \hat{y_i})^2$$
$$SS_{TOTAL} = SS_{regr} + SS_{res} $$
$\bar{y}$ = média da variável resposta
$\hat{y_i}$ = valor estimado pelo modelo para $x_i$
Utilize no excel o valor 1- DIST.F(F, df1, df2, VERDADEIRO)3) para o calculo do p-valor sendo F o valor da estatística F calculada, df1
o grau de liberdade da regressão (normalmente 1) e df2
o valor de graus de liberdade do cálculo dos desvios quadráticos médios dos resíduos (n - 2
).
$$ R^2 = \frac{SS_{regr}}{SS_{TOTAL}} $$
Vamos agora fazer a tabela de Anova
no R
lmLag01
, pelo menu ( Statistics
> Fit Models
> Linear Models
), selecione:growth
como variável resposta;tannin
como variável preditora;Models
> Hipothesis test
> Anova table
);tabela de ANOVA tipo I
onde a partição de variância é sequencial na ordem que os fatores são incluídos no modelo6);
Com esses mesmos dados podemos construir o modelo denominado mínimo ou nulo. No experimento de crescimento da lagarta, a hipótese nula é que tannin
não tem efeito em growth
. Podemos construir o modelo que representa esse cenário, criando o modelo em que growth
não tem preditoras.
lagarta
estão ativos no Rcmdr;lmLag00
, pelo menu ( Statistics
> Fit Models
> Linear Models
), selecione:growth
como variável resposta;1
,numeral um, como variável preditora7);lmLag00
no menu: Models
> Hipothesis tests
> ANOVA table
Não há muito a ser interpretado nos resultados do modelo mínimo, mas reconheça os valores que são estimados no resultado do modelo em Coefficients Estimate
. Note que neste modelo não há inclinação, pois não existe preditora. Na tabela de ANOVA verifique o valor do Sum Sq Residuals
e reconheça onde ele se encontra na tabela de ANOVA montada no planilha eletrônica anteriormente.
O procedimento de partição da variação e razão entre variâncias pode ser utilizada como critério para comparação de modelos aninhados. O modelo é considerado aninhado quando o mais complexo engloba todos as variáveis do mais simples, e por consequência o modelo mais simples não pode explicar mais variação do que o mais complexo.
Os nossos modelos lmLag00
é aninhado ao modelo lmLag01
e por isso podemos fazer a comparação entre eles pelo critério de partição da variação como segue.
Comparando modelo com o mínimo (nulo) no Rcmdr
Model:
existem os modelos lmLag00
e lmLag01
;Models
> Hypothesis Test
> Compare two models
;lmLag00
e lmLag01
para comparação;lmLag01
;
Na comparação de modelos a razão de variância é relacionada ao quanto o modelo mais complexo explicou a mais em relação ao modelo mais simples em razão do quanto não foi explicado.
Quando fazemos a tabela de ANOVA
de um modelo como o lmLag01
, a partição é exatamente a mesma do que a tabela de ANOVA
de comparação com o modelo nulo ou mínimo8). A tabela de Anova de um modelo isolado é equivalente a comparar o modelo em questão com o modelo nulo correspondente. O entendimento desses conceitos é fundamental para utilizarmos a partição de variação como crítério para a tomada de decisão sobre qual o modelo que melhor explica nossos dados.
Nesse ponto, é desejável que tenha entendido que a partição da variância de um modelo é correspondente a compará-lo com o modelo nulo, ou seja, quanta variância o modelo é capaz de explicar em relação ao modelo nulo. Esse modelo nulo, representa o modelo mais simples com a variação total dos dados e é representado por apenas um parâmetro, a média da variável resposta.
Diagnóstico do Modelo Linear
O diagnóstico do modelo linear é feito baseado nas premissas associadas ao modelo e para verificar a influência de cada observação na estimativa dos parâmetros do modelo. Os nossos dados precisam estar acoplados às premissas do modelo linear e não é desejável que o modelo seja definido apenas por uma ou por poucas observações influentes. As principais premissas dos modelos lineares são:
Além disso, avaliamos, para cada observação, sua alavancagem (leverage), definida pelo quanto a observação se afasta da média dos dados, e a sua influência (distância de Cook), definida como o quanto os parâmetros estimados são alterados ao se retirar esta observação dos dados.
Caso ainda tenha dúvidas sobre o diagnóstico dos modelos revisite o tutorial Regressão Linear para sedimentar o diagnóstico dos modelos lineares.
Uma das razões para a unificação do testes clássicos em modelos lineares foi a transformação das variáveis categóricas em variáveis indicadoras, também chamadas de dummies. As variáveis indicadoras são definidas pelas categorias da variável aleatória, indicando 1
quando a observação pertence ao nível e 0
quando não pertence. Para cada nível precisamos de uma indicadora, com exceção do nível que é considerado basal, indicado pelo 0
em todas as variáveis indicadoras dos outros níveis. Portanto, precisamos de:
$$n_{levels} - 1$$
variáveis indicadoras para cada variável categórica em nosso modelo. Dessa forma, para uma variável preditora categórica com 4 níveis
teremos 3 variáveis indicadoras
no modelo e se tivermos duas variáveis categóricas preditoras, cada uma com 3 níveis
, teremos 4 variáveis indicadoras
, duas para cada. Com a transformação para variáveis indicadoras, o modelo linear pode tratar as variáveis categóricas como variáveis numéricas binárias e assim, podemos inserir variáveis numéricas e categóricas como preditoras indistintamente no modelo linear. Entretanto, entender que as categorias foram transformadas em indicadoras é essencial para a interpretação destas variáveis nos outputs do modelo. Veja a explicação mais detalhada na videoaula abaixo:
solo
tem agora 4 níveis: arenoso
, argiloso
, húmico
e alagado
;solo
em variáveis indicadoras criando 3 novas colunas: arenoso
, argiloso
, húmico
. Note que um nível não precisa de indicadora pois será representado pela indicação de 0
em todos as indicadoras 9);Estatística
> Ajuste de Modelos
> Modelo Linear
. colhe ~ arenoso + argiloso + humico
Modelos
> Testes de hipóteses
> Tabela de ANOVA
lmSolo
com a variável solo
original, seguindo os mesmo passos anteriores, apenas mudando a fórmula do modelo para:colhe~solo
PARA ENTREGAR ANTES DO INÍCIO DA PRÓXIMA AULA
0;0;0
1;0;0
, 0;1;0
e 0;0;1
representando cada uma uma variável. Note que um nível (alagado) não foi representado como dummy, esse será representado pelo 0;0;0
que representa o intercepto do modeloModels
> Summarize model