Parte 1 - Objetivo

Apresentar as principais técnicas mais simples de regressão. Conteúdo: -mínimos quadrados -mínimos quadrados e hipóteses -interpretação dos resultados -estimação e problemas.

Introdução

Aqui serão apresentados os primeiros passos na estimação e análise econométrica

R> alpha <- 30
R> beta <- 0.9
R> N <- 1000
R> x <- runif(N, 0, 50)
R> 
R> # draw the random errors (all the other factors also affecting y)
R> epsilon <- rnorm(N, sd=10)
R> # compute the dependent variable values
R> y <- alpha + beta*x + epsilon
R> 
R> plot(x,y, main="Regressão entre X e Y")
R> abline(a = alpha, b=beta, col="red", lwd = 2, lty = 2)
Figure Caption.

Figure 1: Figure Caption.

Note que o resultado indica a reta de regressão, e agora, opdemos analisar, com base em intervalos fixos, qual seria a estimação pontual.

R> # compute average y per x intervals
R> lower <- c(0,10,20,30,40)
R> upper <- c(lower[-1], 50)
R> n_intervals <- length(lower)
R> y_bars <- list()
R> length(y_bars) <- n_intervals
R> x_bars <- list()
R> length(x_bars) <- n_intervals
R> for (i in 1:n_intervals){
R+   y_bars[i] <- mean(y[lower[i] <= x & x < upper[i]])
R+   x_bars[i] <- mean(x[lower[i] <= x & x < upper[i]])
R+ 
R+ }
R> y_bars <- unlist(y_bars)
R> x_bars <- unlist(x_bars)
R> 
R> # add to plot
R> plot(x,y)
R> abline(a = alpha, b=beta, col="red")
R> points(x_bars, y_bars, col="blue", lwd=10)

Dados reais

Vamos analisar agora dados de educação e nota em um exame, em que pela teoria, quanto mais escolaridade, melhor deve ser o desempenho dos estudantes.

\(Exame = \alpha +\beta \times education +\varepsilon\)

R> data(swiss)
R> plot(swiss$Education, swiss$Examination)
R> # implement the simple OLS estimator
R> # verify implementation with simulated data from above
R> # my_ols(y,x)
R> # should be very close to alpha=30 and beta=0.9
R> my_ols <-
R+   function(y,x) {
R+     N <- length(y)
R+     betahat <- (sum(y*x) - N*mean(x)*mean(y)) / (sum(x^2)-N*mean(x)^2)
R+     alphahat <- mean(y)-betahat*mean(x)
R+     
R+     return(list(alpha=alphahat,beta=betahat))
R+   }
R> 
R> # estimate the effect of Education on Examination
R> estimates <- my_ols(swiss$Examination, swiss$Education)
R> estimates
$alpha
[1] 10.12748

$beta
[1] 0.5794737
R> plot(swiss$Education, swiss$Examination)
R> abline(estimates$alpha, estimates$beta, col="red", lwd = 2, lty = 2)
Figure Caption.

Figure 2: Figure Caption.

No R temos um pacote

O pacote de R para rodarmos uma regressão deste tipo, é o lm (linear model)


Call:
lm(formula = Examination ~ Education, data = swiss)

Coefficients:
(Intercept)    Education  
    10.1275       0.5795  

Call:
lm(formula = Examination ~ Education, data = swiss)

Residuals:
     Min       1Q   Median       3Q      Max 
-10.9322  -4.7633  -0.1838   3.8907  12.4983 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 10.12748    1.28589   7.876 5.23e-10 ***
Education    0.57947    0.08852   6.546 4.81e-08 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 5.773 on 45 degrees of freedom
Multiple R-squared:  0.4878,    Adjusted R-squared:  0.4764 
F-statistic: 42.85 on 1 and 45 DF,  p-value: 4.811e-08

References