terça-feira, 1 de julho de 2008

Análise de regressão simples no R

Existe uma grande quantidade de análises que podem ser feitas encima de uma análise de regressão, como por exemplo uma análise de resíduos. Porém meu intuito aqui é só mostrar a parte introdutória.

Para iniciar precisamos de duas variáveis, uma dependente ou resposta e a outra independente ou explicativa, que chamaremos de x e y e que serão gerados de forma aleatória. São gerados 20 valores atravéz da distribuição uniforme entre 1 e 10 para x e entre 10 e 20 para y, após isso esses valores são ordenados em ordem crecente pelo comando sort().

set.seed(1)
x=sort(runif(20,1,10))
set.seed(2)
y=sort(runif(20,10,20))

Note que usei o comando set.seed antes de cada comando para que os valores aleatórios sejam os mesmo em qualquer lugar em que eles forem gerados, ou seja, os resultados daqui serão iguais pra qualquer pessoa que queira reproduzir o exemplo. Anyway, seguimos começando a análise onde a primeira coisa que olhamos é a correlação das variáveis.

cor(x,y)
[1] 0.982508

Veja que é uma ótima correlação. Em seguida fazemos a análise de regressão com o comando lm() de onde construímos nossa reta y=a+bx. Note que o y~x é a explicação de como deve ser a equação, ou seja, x explica y, ou ainda, y=x.

regressao=lm(y~x) summary(regressao)

Call: lm(formula = y ~ x) Residuals: Min 1Q Median 3Q Max -0.9339 -0.4361 0.1189 0.2904 0.9063 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 8.14171 0.33723 24.14 3.65e-15 *** x 1.16125 0.05188 22.38 1.37e-14 *** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.5823 on 18 degrees of freedom Multiple R-squared: 0.9653, Adjusted R-squared: 0.9634 F-statistic: 501.1 on 1 and 18 DF, p-value: 1.367e-14

Com isso nossa reta fica y= 8.14171 + 1.16125 x onde tanto o coeficiente angular quanto o linear são segnificantes à 1%. Maravilha de regressão! E pra completar o grafico de dispersão com a reta de regressão.

plot(x,y)
abline(regressao)

2 comentários:

Marcus VBP disse...

Não entendi nada.

Negao_DB disse...

a imortalidade e os livros.....