Índice
- O Curso R
-
- Tutoriais
-
- Apostila
-
- 6. Testes de Hipótese (em preparação!)
- Exercícios
-
- Material de Apoio
-
- Área dos Alunos
-
- Cursos Anteriores
-
IBUSP
Outras Insitutições
Outras Insitutições
Essa é uma revisão anterior do documento!
Videoaula do curso Princípios de Planejamento e Análise de Dados. Os conceitos abordados são os mesmos desse tutorial, desconsidere referências à disciplina.
Os modelos lineares permitem que sejam incluídas mais do que uma variável preditora, como fizemos até aqui. Nesse tutorial vamos aprender alguns princípios básicos desses modelos mais complexos. Em modelos com mais de uma variável preditora, precisamos tomar a decisão de quais variáveis devemos reter em nosso modelo. É desejável interpretar o modelo mais simples e que contém apenas as variáveis que explicam porções consideráveis da variação na variável resposta.
Formulas Estatísticas
O argumento formula
da função lm
funciona de forma diferente das formulas matemáticas e deve-se ter cuidado com a inclusão de termos ou operações dentro dela.
Alguns aspectos básicos do argumento:
y ~ x
indica: construa o modelo da variável resposta y
como função estatística linear de x
;y ~ x1 + x2
indica: construa o modelo estatístico de y
como função linear das variáveis x1
e x2
como tendo efeitos aditivos;
Se quisermos utilizar os símbolos matemáticos no sentido matemático usual dentro de uma fórmula estatística, temos que utilizara a função I()
para que a operação seja realizada antes da construção do modelo:
y ~ I( x1^2 * x2^3 )
indica: modele y como função estatística da variável x1^2 * x2^3
; y ~ I( x1 / x2 )
indica: modele y como função estatística da variável x1/x2
;
No caso de utilizarmos funções matemáticas específicas a função I()
torna-se desnecessária:
log(y) ~ log(x)
indica: modele o log(y)
com função estatística da variável log(x))
;log(y) ~ log(x1^2 * x2)
indica: modele o log(y) com função estatística da variável log(x1^2 * x2)
;Quando temos uma hipótese onde há mais de uma variável preditora, precisamos avaliar, antes de iniciar as análises, quais modelos são plausíveis e relacionados a que hipótese alternativa. Os modelos só são construídos a partir dessa avaliação. Vamos usar o exemplo da videoaula para exemplificarmos os procedimentos e conceitos relacionados a esse tutorial.
Videoaula do curso Princípios de Planejamento e Análise de Dados. Os conceitos abordados são os mesmos desse tutorial, desconsidere referências à disciplina.
A interação é um elemento muito importante quando temos mais de uma preditora, pois desconsiderá-la pode limitar o entendimento dos processos envolvidos. Um exemplo cotidiano da interação é visto no uso de medicamentos e o alerta da bula sobre interação medicamentosa ou efeitos colaterais para pessoas portadoras de doenças crônicas. Dizemos que um medicamento tem interação com outra substância quando o seu efeito é modificado pela presença de outra substância, como por exemplo a ingestão de álcool junto com muitos medicamentos. Nos modelos, a interação tem uma interpretação similar, a resposta pelo efeito de uma variável preditora se altera com a presença de outra preditora.
Delineamentos Experimentais
Expressão | Significado |
---|---|
y ~ x | Modele y como função estatística de x |
y ~ x1 + x2 | inclua as variáveis x1 e x2 como preditoras |
y ~ x1 + x2 + x1:x2 | inclua também a interação de x1 com x2 |
y ~ x1 * x2 | mesmo que y ~ x1 + x2 + x1:x2 |
y ~ (x1 + x2 + x3)^2 | Adiciona acima + x3 + x1:x3 + x2:x3 |
y ~ (x1 + x2 + x3)^3 | Adiciona acima + x1:x2:x3 |
y ~ (x1 + x2 + x3)^3 - x1:x2 | Retira o termo x1:x2 da fórmula acima |
Videoaula do curso Princípios de Planejamento e Análise de Dados. Os conceitos abordados são os mesmos desse tutorial, desconsidere referências à disciplina.
Videoaula do curso Planejamento e Análise de Dados, os conceitos abordados são os mesmos, desconsidere referências à disciplina.
Um dos procedimento de simplificar modelos é partir do modelo cheio e ir simplificando, retirando variáveis preditoras que não ajudam na explicação da variabilidade dos dados. O procedimento consiste em comparar modelos aninhados, dois a dois, retendo o que está mais acoplado aos dados. Caso os modelos não seja diferentes no seu poder explicativo, retemos o modelo mais simples, apoiados no princípio da parcimônia.
summary
)A diferença não é significativa:
A difereça é significativa:
Já utilizamos esse procedimento no tutorial 7a. Regressão Linear Simples, quando comparamos o modelo linear com preditora e o modelo sem nenhuma variável preditora.
Vamos analisar o dado de peso dos bebês ao nascer e como isso se relaciona às características da mãe. Esses dados pode ser consultados em https://www.stat.berkeley.edu/users/statlabs/labs.html.
Para simplificar nosso tutorial vamos usar apenas as preditoras: tempo de gestação, idade da mãe e se ela é fumante ou não.
bebes <- read.table("babies.csv", header= TRUE, as.is = TRUE, sep= "\t") str(bebes) mlfull <- lm(bwt ~ gestation + age + smoke + gestation:age + gestation:smoke + age: smoke + gestation:age:smoke, data = bebes) summary(mlfull)
Call: lm(formula = bwt ~ gestation + age + smoke + gestation:age + gestation:smoke + age:smoke + gestation:age:smoke, data = bebes) Residuals: Min 1Q Median 3Q Max -51.433 -10.647 0.156 9.800 50.994 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 1.843e+02 5.443e+01 3.385 0.000735 *** gestation -2.262e-01 1.938e-01 -1.167 0.243542 age -6.010e+00 1.942e+00 -3.095 0.002014 ** smokeTRUE -1.830e+02 8.188e+01 -2.235 0.025635 * gestation:age 2.177e-02 6.926e-03 3.143 0.001716 ** gestation:smokeTRUE 6.192e-01 2.934e-01 2.110 0.035056 * age:smokeTRUE 3.967e+00 2.956e+00 1.342 0.179915 gestation:age:smokeTRUE -1.397e-02 1.061e-02 -1.317 0.187994 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 16.1 on 1166 degrees of freedom Multiple R-squared: 0.233, Adjusted R-squared: 0.2284 F-statistic: 50.6 on 7 and 1166 DF, p-value: < 2.2e-16
Vamos simplificar o modelo, retirando a interação gestation:age:smoke
que aparenta não ser importante.
ml01 <- lm(bwt ~ gestation + age + smoke + gestation:age + gestation:smoke + age: smoke, data = bebes) anova(ml01, mlfull) summary(ml01)
Continuamos a simplificação, retirando as interações duplas uma a uma para avaliar quais delas devem ser mantidas. Os testes parciais das variáveis no summary
nos dá uma indicação de quais devem ser mantidas, mas uma boa prática é fazer o processo completo, já que um elemento no modelo pode mudar o efetividade de outro, principalmente quando compartilham alguma porção de variação explicada.
## sem age:smoke ml02 <- lm(bwt ~ gestation + age + smoke + gestation:age + gestation:smoke, data = bebes) anova(ml01, ml02) ## sem gestation:smoke ml03 <- lm(bwt ~ gestation + age + smoke + gestation:age + age:smoke, data = bebes) anova(ml01, ml03) ## sem gestation:age ml04 <- lm(bwt ~ gestation + age + smoke + gestation:smoke + age: smoke, data = bebes) anova(ml01, ml04)
A única interação dupla que não parece fazer diferença quando retiramos do modelo é a age:smoke
, as outras explicam uma porção razoável da variação dos dados.
Poderíamos continuar simplificando para garantir que não retemos nenhum termo que não é relevante para explicar o peso do bebê ao nascer. Entretanto, a menos que se tenha um bom motivo1), não retiramos os termos das variáveis isoladas quando ela está em algum termo de interação.
O summary
nos fornece as principais informações sobre o modelo mínimo adequado.
summary(ml02) confint(ml02) anova(ml02)
par(mfrow = c(2,2), mar=c(4,4,2,2), cex.lab=1.2, cex.axis=1.2, las=1, bty="n") plot(ml02)
Os dados desse estudo serão usados também no exercício, porém lá, vamos partir dos dados brutos com mais variáveis