Ferramentas do usuário

Ferramentas do site


cursos:planeco:roteiro:08-lm_r

Modelos Lineares

lmComics.jpg

Os modelos lineares são uma generalização dos testes de hipótese clássicos mais simples. Uma regressão linear, por exemplo, só pode ser aplicada para dados em que tanto a variável preditora quanto a resposta são contínuas, enquanto uma análise de variância é utilizada quando a variável preditora é categórica. Os modelos lineares não têm essa limitação, podemos usar variáveis contínuas ou categóricas indistintamente.

ERRATA: por volta de 16'28“ digo que o valor da inclinação na população é 3,5 quando o correto é 2,5

No nosso quadro de testes clássicos frequentistas, definimos os testes, baseados na natureza das variáveis respostas e preditoras.

tabTestes.png

Os modelos lineares dão conta de todos os testes apresentados na tabela acima que tenham a variável resposta contínua. Portanto, já não há mais necessidade de decorar os nomes: teste-t, Anova, Anova Fatorial, Regressão Simples, Regressão Múltipla, Ancova entre muitos outros nomes de testes que foram incorporados nos modelos lineares. Isso não livra o bom usuário de estatística de entender a natureza das variáveis que está utilizando. Isso continua sendo imprescindível para tomar boas decisões ao longo do processo de análise e interpretação dos dados.

Simulando Dados

Vamos começar com um exemplo simples de regressão, mas de forma diferente da usual. Vamos usar a engenharia reversa para entender bem o que os modelos estatísticos estão nos dizendo e como interpretar os resultados produzidos. Para isso vamos inicialmente gerar dados fictícios. Esses dados terão dois componentes: uma estrutura determinística e outra aleatória. A primeira está relacionada ao processo de interesse e relaciona a variável resposta à preditora. No caso, essa estrutura é linear e tem a seguinte forma:

$$ y = {\alpha} + {\beta} x$$

O componente aleatório é expresso por uma variável probabilística Gaussiana da seguinte forma:

$$ \epsilon = N(0, \sigma) $$

Portanto, nossos dados serão uma amostra de uma população com a seguinte estrutura:

$$ y = {\alpha} + {\beta} x + \epsilon$$

Parece complicado, mas é razoavelmente simples gerar dados aleatórios em nosso computador baseado nessa estrutura. Para isso, abra uma planilha eletrônica e siga os passos descritos abaixo:

  • nomeie a coluna A como x na célula A1;
  • preencha as células A2:A16 com uma sequência de valores de 0.5 a 7.5, em intervalos de 0.5

plx.png

  • nomeie a coluna B como y0 na célula B1;
  • preencha a célula B2 com a fórmula = 4 + 3.5 * A2
  • copie a formula para as células B3:B16, clicando e arrastando o mouse quando aparecer no canto inferior esquerdo da célula B2 o sinal de +.

plaxy.png

  • nomeie a coluna C como desvio na célula C1;
  • preencha a célula C2 com a fórmula = INV.NORM.N(ALEATÓRIO(); 0 ; 2) 1). Essa fórmula vai retornar valores aleatórios tomados de uma distribuição normal com média 0 e desvio padrão 2;
  • copie a formula para as células C3:C16, clicando e arrastando o mouse quando aparecer no canto inferior esquerdo da célula B2 o sinal de +.
  • nomeie a coluna D como y1 na célula D1;
  • A variável y1 na coluna D é a soma do valor da coluna B com o valor da coluna C (y0+ desvio). Para fazer isso, coloque na célula D2 a função =soma(B2:C2), depois copie para as outras células da coluna
  • salve a planilha como texto separado por vírgulas e use o nome “xy.csv”

A função INV.NORM.N() tem três parâmetros, (1) probabilidade, (2) média e (3) desvios padrão. Ao definir o terceiro parâmetro, estamos amostrando valores de uma distribuição normal com desvio padrão igual a 2.

  • importe os dados da planilha para o Rcommander (lembrando de selecionar como separador a vírgula) e use o nome xy ;
  • garanta que os dados foram lidos corretamente, clicando em View data set

Rcmdrxy.png

lmdummy <- lm(colhe ~ dummy1 + dummy2 + dummy3 , data = colheitaDummy)
## avalie o modelo 
summary(lmdummy)
anova(lmdummy)
  • ajuste o modelo normal de anova
lmAnova <- lm(colhe~solo, data=colheita)

## avalie o modelo
summary(lmAnova)
anova(lmAnova)
  • compare os coeficientes dos dois modelos
1)
Em versões mais antigas do Excel, essa função tinha o nome de INV.NORM e para computadores em inglês use a função no seguinte formato: =NORM.INV(RAND(); 0; 2), no calc do LibreOffice use =NORMINV(RAND(),0,2)).
cursos/planeco/roteiro/08-lm_r.txt · Última modificação: 2019/04/01 16:11 por adalardo