Aula 02: econometria básica
Abstract
Apresentação da disciplina
Keywords: econometria, finanças, \(R\), atuarial.
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 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 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