Como rodar regressões com grupos de variáveis no R

Enquanto o livro de R do Análise Real não fica pronto, aí vai uma dica simples, mas que eu demorei um tempão para perceber.
Sabe quando você quer rodar várias regressões com grupos de variáveis independentes distintas? Há  um jeito simples. Defina os grupos assim:

grupo1 = c("x1", "x2")
grupo2 = c("x3", "x4")

Para regredir y sobre x1 e x2:
eq0 = lm( y ~ ., data=df[, c("y", grupo1)] )

E para regredir sobre ambos os grupos:
eq1 = lm( y ~ ., data=df[, c("y", grupo1, grupo2)] )

PS: Erros corrigidos. Obrigado, Pedro!

3 comentários:

Prof Shikida disse...

Depois eu darei a dica ao contrário (graças ao seu comentário desatento que me obrigou a pesquisar...não, não estou reclamando...não neste caso, rs).

p.s. não sou um robô...ainda.

Pedro H. C. Sant'Anna disse...

Alguns comentarios/duvidas:
1 - a dica seria pra rodar varias regressoes com varios grupo de variaves "independents" diferentes, nao? O vetor de covariates que esta mudando, e nao a variavel independente.

2 - No exemplo, nao teriamos que colocar o y entre aspas tambem nao?
Tipo:
#Para regredir y sobre x1 e x2:
eq0 = lm( y ~ ., data=df[, c("y", grupo1)] )
#E para regredir sobre ambos os grupos:
eq1 = lm( y ~ ., data=df[, c("y", grupo1, grupo2)] )

Valeu pelas dicas, Leo!

Leo Monasterio disse...

Pedro, obrigado! Corrigido.

Tecnologia do Blogger.