Regressão linear com fatores em R

10

Estou tentando entender como exatamente os fatores funcionam em R. Digamos que eu queira executar uma regressão usando alguns dados de amostra em R:

> data(CO2)
> colnames(CO2)
[1] "Plant"     "Type"      "Treatment" "conc"      "uptake"   
> levels(CO2$Type)
[1] "Quebec"      "Mississippi"
> levels(CO2$Treatment)
[1] "nonchilled" "chilled"   
> lm(uptake ~ Type + Treatment, data = CO2)

Call:
lm(formula = uptake ~ Type + Treatment, data = CO2)

Coefficients:
 (Intercept)   TypeMississippi  Treatmentchilled  
       36.97            -12.66             -6.86  

Entendo isso TypeMississippie Treatmentchilledsou tratado como booleano: para cada linha, a absorção inicial é 36.97e subtraímos 12.66se for do tipo Mississippi e 6.86se foi resfriado. Estou tendo problemas para entender algo assim:

 > lm(uptake ~ Type * Treatment, data = CO2)

 Call:
 lm(formula = uptake ~ Type * Treatment, data = CO2)

 Coefficients:
                 (Intercept)                   TypeMississippi  
                      35.333                            -9.381  
            Treatmentchilled  TypeMississippi:Treatmentchilled  
                      -3.581                            -6.557  

O que significa multiplicar dois fatores juntos em um lm?

sylowtheorems
fonte

Respostas:

17

Para elaborar a resposta de @ John: nas fórmulas de R, você pode aplicar alguns operadores aos termos: "+" simplesmente os adiciona ",": "significa que você adiciona um termo (ou vários termos) que se refere à interação ( veja abaixo), "*" significa ambos, ou seja: os "efeitos principais" são adicionados e o (s) termo (s) de interação também.

Então, o que essa interação significa? Bem, no caso de variáveis ​​contínuas, é realmente um termo adicionado que é simplesmente a múltipla das duas variáveis. Se você tiver altura e peso como preditores e usar out ~ height * weightcomo fórmula, o modelo linear conterá, portanto, três 'variáveis', a saber, peso, altura e seu produto (ele também contém a interação, mas que é menos interessante aqui).

Embora eu sugira o contrário acima: isso funciona exatamente da mesma maneira para variáveis ​​categóricas, mas agora o 'produto' aplica-se às variáveis ​​dummy (conjunto) de cada variável categórica. Suponha que sua altura e peso agora sejam categóricos, cada um com três categorias (S (shopping), M (edium) e L (arge)). Em modelos lineares, cada uma delas é representada por um conjunto de duas variáveis ​​fictícias que são 0 ou 1 (existem outras formas de codificação, mas esse é o padrão em R e o mais usado). Digamos que usamos S como categoria de referência para ambos, então temos cada vez dois manequins height.M e height.L (e similares para o peso).

Portanto, agora, o modelo out ~ height * weightagora contém os 4 manequins + todos os produtos de todas as combinações de manequins (não estou escrevendo explicitamente os coeficientes aqui, eles estão implícitos):

(intercept) + height.M + height.L + weight.M + weight.L + height.M * weight.M + height.L * weight.M + height.M * weight.L + height.L * weight.L.

Na linha acima, '*' agora se refere novamente a um produto simples, mas desta vez dos manequins, de modo que cada produto em si também é 1 (quando todos os fatores são 1) ou 0 (quando pelo menos um não é).

Nesse caso, as 8 'variáveis' permitem resultados diferentes (médios) em todas as combinações das duas variáveis: o efeito de ter grande peso agora não é mais o mesmo para pessoas pequenas (para elas, o efeito é simplesmente formado pelo termo weight.L) como para pessoas grandes (aqui, o efeito é weight.L + height.L * weight.L)

Nick Sabbe
fonte
7

Para acompanhar a resposta de John, as fórmulas no lm não usam notação aritmética, elas estão usando uma notação simbólica compacta para descrever modelos lineares (especificamente a notação de Wilkinson-Rogers, há um bom resumo aqui) http: //www.physiol .ox.ac.uk / ~ raac / R.shtml ).

Basicamente, incluir A * B na fórmula do modelo significa que você está ajustando A, B e A: B (a interação de A e B). Se o termo de interação for estatisticamente significativo, isso sugere que o efeito do tratamento é diferente para cada um dos tipos.

Marius
fonte
3

Talvez procurar 'fórmula' em ajuda seja útil. Você não está se multiplicando, está dizendo que deseja os dois efeitos principais e a interação deles também.

John
fonte
11
(+1), embora pareça mais um comentário para mim.
Dmitrij Celov