Você está na página 1de 30

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/331940763

Manual de Econometria com R

Technical Report · March 2019


DOI: 10.13140/RG.2.2.34426.34244/2

CITATION READS
1 8,917

1 author:

Alexandre Loures
Universidade Federal de Pelotas
30 PUBLICATIONS 31 CITATIONS

SEE PROFILE

All content following this page was uploaded by Alexandre Loures on 13 February 2020.

The user has requested enhancement of the downloaded file.


Manual de Econometria com R
Programa de Pós-Graduação em Economia
Centro de Ciências Sociais Aplicadas
Universidade Federal da Paraíba
João Pessoa, Paraíba, Brasil

Alexandre Loures

2020-02-13
2
Sumário

1 Apresentação 5

2 Funções Básicas no R 7
2.1 Usando o R como uma Calculatora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3 Estatísticas Básicas 11
3.1 Medidas de Posição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4 Regressão Linear Simples 17


4.1 Importando um banco de dados com R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.2 Teste para normalidade Jarque-Bera e Shapiro-test . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.3 Correlação entre variáveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.4 Mínimo Quadrado Ordinário (MQO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.5 Teste para forma funcional Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.6 Obtendo os resíduos e os valores ajustados da regressão . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.7 Teste para a presença de heterocedasticidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.8 Interpretando a saída do MQO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5 Reference 27

3
4 SUMÁRIO
Capítulo 1

Apresentação

Atualmente os alunos de econometria possuem à disposição diversos pacotes estatísticos e econométricos para
colocarem em prática o aprendizado adquirido nas aulas de estatística e econometria. Esses pacotes se dividem
entre aqueles que são softwares pagos, proprietários, e aqueles que são gratuitos, livres. Como exemplo de pacotes
pagos destaca-se o STATA e o SAS, por sua vez, R e Python caracterizam-se como sendo pacotes gratuitos. Sendo que
aquele é considerado um software estatístico – com grande popularidade – enquanto esse é considerado um software
econométrico – cuja utilização tem crescido bastante. Os pacotes gratuitos apresentam-se como uma alternativa
bastante útil aos pagos: primeiramente, em virutde desses geralmente possuírem um alto custo e, mais importante,
os softwares livres ao possuírem desenvolvedores ao redor do mundo inteiro têm se atualizado com as novas teorias
estatísiticas e econométricas mais rapidamente do que os pacotes pagos. Além disso, existe uma comunidade muito
maior na internet o que possibilita a troca de experiências e ajuda muito mais fácil do que os softwares pagos.
Neste manual o foco será na utilização do pacote R. Aos interessados na linguagme Python recomenda-se o manual
Econometria Aplicada com o uso do Python disponível no seguinte link. O software estatístico R possui diversas
interfaces gráficas cujo objetivo é tornar o uso do pacote o mais amigável possível para usários iniciantes bem como
avançados. Destaca-se que a IDE (Integrated Development Environment) mais popular para trabalhar com o R é o
RStudio. Nesse caso, este manual utilizará essa IDE para apresentar os pacotes e os comandos para a aplicação da
teoria estatística e econométrica. Abaixo apresenta a interface gráfica do RStudio que o usuário irá ver ao abrir o
pacote.
Como uma primeira observação, o RStudio, por padrão, apresenta todas as quatro janelas com o fundo branco,
porém, é possível configurar o layout de acordo com a preferência de cada um dos usuários, dentro daqueles
disponibilizados na opção Tools>Global Options...>Appearence. Ademais, a janela número um apresenta o
script, ou seja, os objetos, os pacotes, as operações, as observações, etc. que estão sendo executadas naquele
momento. Na linguagem de programação se diz que a janela um apresenta o código de programação. Na janela
dois, tem-se, na aba Environment, os objetos gerados no código. Já a terceira janela apresenta o console onde é
possível executar os comandos diretamente, isto é, não através do script. Por fim, a quarta janela, entre outras
opções, será o espaço onde os gráficos do script em execução serão exebidos. Como última observação, destaca-
se a existência de diversos editores de textos que possibilitando diferenciar os códigos da programação em cores
facilitando em muito o trabalho para escrever a rotina bem como identificar possíveis erros no código. Não resta
dúvidas de que o mais poderoso é o Emacs, contudo, esse editor é muito difícil de usar. Nesse sentido, o Sublime
Text é uma ótima opção uma vez que é muito simples de usar e é o que apresenta o melhor visual, a estrutura de
cores do código é bastante poderosa.
Observação: a base usada nos exemplos do Capítulo 3 está disponível no seguinte link.

5
6 CAPÍTULO 1. APRESENTAÇÃO

Figura 1.1: Aparência do RStudio.


Capítulo 2

Funções Básicas no R

2.1 Usando o R como uma Calculatora


2.1.1 Operações Matemáticas Básicas com R
Pode-se usar a linha de comando do R para realizar as quatro operações matemática básicas e outras operações
simples.
## Realizando uma soma

2 + 2

## [1] 4
## Realizando uma subtração

15 - 3

## [1] 12
## Realizando uma multiplicação

2 * 8

## [1] 16
## Realizando uma divisão

35/7

## [1] 5
## Extraindo a raiz quadrado

sqrt (16)

## [1] 4

2.1.2 Operações mais Complexas com o R


Também é possível realizar operações mais complexas com o R.
## Calculando o logaritmo neperiano de 8

log(8)

## [1] 2.079442

7
8 CAPÍTULO 2. FUNÇÕES BÁSICAS NO R

## Calculando o logaritmo na base 10 de 8

log(8, 10)

## [1] 0.90309
## Calculando o logaritmo na base 5 de 8

log(8, 5)

## [1] 1.29203
## Calculando a tangente de 9

tan(9)

## [1] -0.4523157

2.1.3 Usando Objetos para Realizar Operações com o R


Outra recurso do R é poder atribuir qualquer valor a um objeto e usá-lo para realizar operações simples e complexas.
## Igualando a divisão de 200 por 10 à 'q'

q <- 200/10

## Obtendo o resultado da divisão anterior

## [1] 20
## Multiplicando o objeto 'q' por 2

q * 2

## [1] 40
## Obtendo o seno do objeto 'q'

sin(q)

## [1] 0.9129453
## Adicionando 30 ao objeto 'q'

q + 30

## [1] 50
## Subtraindo o objeto 'q' de 100

100 - q

## [1] 80

2.1.4 Outros Exemplos de Operações


## Obtendo o valor de 'Pi'

pi
2.1. USANDO O R COMO UMA CALCULATORA 9

## [1] 3.141593
## Obtendo o valor de 'e'

exp(1)

## [1] 2.718282
## Potência com R

x <- 2

x ^ 3

## [1] 8
## Outra Forma de Obter a Potência com R

y <- 2

y ** 3

## [1] 8
10 CAPÍTULO 2. FUNÇÕES BÁSICAS NO R
Capítulo 3

Estatísticas Básicas

3.1 Medidas de Posição


3.1.1 Média
Média Aritmética Simples
A média aritmética simples é igual ao somatório dos valores de uma série dividido pelo número total de elementos
da série. Essa é a média mais comum usada no dia a dia. A representação matemática é da seguinte forma:

𝑛
∑𝑖=1 𝑥𝑖
𝑥̄ = (3.1)
𝑛

where:
𝑥𝑖 → representa cada elemento da série e;
𝑛 → representa o número total de elementos da série.
Para calcular a média aritmética simples no R, a seguinte sintaxe é usada:
## Exemplo:

## criando uma série qualquer de dados

x <- c(15, 40, 10, 25, 26, 33)

## sintaxe para calcular a média aritmética simples

mean (x)

## [1] 24.83333
Média Geométrica
A média geométrica é a média das médias e é igual à 𝑛𝑡ℎ raiz quadrado do produto (multiplicação) entre os elementos
de uma série cuja representação matemática é como a seguir:


𝑔̄ = 𝑛
𝑥1 ∗ 𝑥2 ∗ ⋯ ∗ 𝑥𝑛 (3.2)

ou

1
𝑔 ̄ = (𝑥1 ∗ 𝑥2 ∗ ⋯ ∗ 𝑥𝑛 ) 𝑛 (3.3)

11
12 CAPÍTULO 3. ESTATÍSTICAS BÁSICAS

em que:
𝑥𝑖 → representa cada elemento da série e;
𝑛 → representa o número total de elementos da série.
Existem alguns pacotes no R que possuem uma sintaxe para calcular a média geométrica, contudo, pode-se lembrar
da fórmula dessa média e calculá-la diretamente sem usar um comando específico para esse cálculo.
## Exemplo:

## criando uma série de dados qualquer

x <- c(15, 40, 10, 25, 26, 33)

## realizando o produto interno dos elementos 'x'

prod (x)

## [1] 128700000
## número dos elementos da série

n <- 6

## calculando a média geométrica

prod (x) ^ (1/n)

## [1] 22.46966
Média Harmônica
Quando se trata de quantidades inversamente proporcionais (por exemplo, custo e quantidade), a média harmônica
é usada. Ou seja, a média harmônica é usada para calcular o custo médio das mercadorias compradas com um
valor monetário fixo, a velocidade média, etc.. Como o custo médio é igual à 𝐶 = 𝑃𝑞 e a velocidade média é igual
à 𝑉 = 𝑑𝑡 , i.e., custo é inversamente propocional à quantidade e velocidade é inversamente ao tempo. A fórmula da
média harmônica é:

𝑛
ℎ̄ = 1 1 1 (3.4)
𝑥1 + 𝑥2 +⋯+ 𝑥𝑛

where:
𝑥𝑖 → representa cada elemento da série e;
𝑛 → representa o número total de elementos da série.
Assim como para a média aritmética simples e para a média geométrica existem alguns pacotes no R que possui
uma sintaxe para calcular a média harmônica, contudo, não há necessidade de instalá-los para realizar esse cálculo,
basta entender a fórmula e aplicá-la manualmente no R.
## Exemplo:

## criando uma série de dados qualquer

x <- c(15, 40, 10, 25, 26, 33)

## dividindo 1 (um) por cada elemento do objeto 'x'

a <- 1/x
3.1. MEDIDAS DE POSIÇÃO 13

## somando os elementos do objeto 'a'

b <- sum (a)

## número de elementos da série

n <- 6

## calculando a média harmônica

n / b

## [1] 19.97129

3.1.2 Mediana
A mediana de qualquer série de dados separa a metade inferior da metade superior. Isto é, 50% da série terão
valores menores ou iguais à mediana e os outros 50% da série terão valores maiores ou iguais à mediana. Existem
duas observações que precisam serem feitas. Primeiro, os dados devem ser organizados ordenadamente (pode estar
na ordem crescente ou decrescente), i.e., não se deve trabalhar com dados brutos, i.e., sem ordenação. Por exemplo,
uma série de dados bruto {7, 9, 1, 5, 3} precisa ser ordenada {1, 3, 5, 7, 9} or {9, 7, 5, 3, 1}. Segundo, deve-se verificar
a fórmula para cada uma das situações que serão descritas a seguir.
Como última observações, a fórmula aplicada no cálculo da mediana não reporta o valor da mediana, mas ao invés,
a posição na qual o valor mediano encontra-se. Assim, encontrada a essa posição retorna-se a série de dados para
localizar a mediana.
1. se o número de termos da série em questão for ímpar, a mediana é o termo de ordem dado pela seguinte
fórmula: 𝑃𝑀𝑑 = 𝑛+1
2 .

2. se o número de termos da série em questão for par, a mediana é a média aritmética simples dos termos de
ordem dados pelas fórmulas: 𝑃𝑀𝑑 = 𝑛2 and 𝑃𝑀𝑑 = 𝑛2 + 1.
em que:
𝑃𝑀𝑑 → é a posição do valor mediano na série e;
𝑛 → é o número de elementos na série.
Exemplo 2.1: Qual é a mediana da série 1, 3, 5, 7, 9?1 Uma vez que o número de termos da série é ímpar, usa-se
somente a fórmula 𝑃𝑀𝑑 = 𝑛+1
2 . Então,

5+1 6
𝑃𝑀 𝑑 = = =3
2 2

Portanto, o valor mediano está na 3 posição, i.e., a mediana é 𝑀𝑑 = 5.


Exemplo 2.2: Qual é a mediana da série 1, 3, 5, 7, 9, 10?2 Agora o número de termos na série é par, então aplica-se
duas fórmulas: 𝑃𝑀𝑑 = 𝑛2 and 𝑃𝑀𝑑 = 𝑛2 + 1. Portanto,

6
𝑃𝑀 𝑑 = =3
2
e

6
𝑃𝑀 𝑑 = +1=3+1=4
2
1 Note que a série já está ordenada, i.e., não são dados bruto.
2 Note que a série já está ordenada, i.e., não são dados bruto.
14 CAPÍTULO 3. ESTATÍSTICAS BÁSICAS

Assim, o valor mediano será a média aritmética simples dos valores que estão na 3 e 4 posições e que são, respecti-
vamente, 5 e 7.

5+7 12
𝑥̄ = = =6
2 2

Assim, a mediana é igual a 𝑀𝑑 = 6.


Contudo, no R, os valores reportados pela sintaxe da mediana são os valores da mediana da série de dados.
## Exemplo:

## criando uma série de dados qualquer

a <- c(1, 3, 5, 7, 9)

## calculando a mediana da série

median (a)

## [1] 5
Para a outra série tem-se:
## Exemplo:

## criando uma série de dados qualquer

b <- c(1, 3, 5, 7, 9, 10)

## calculando a mediana da série

median (b)

## [1] 6

3.1.3 Moda
Moda é o valor da série que mais ocorre, i.e., com maior frequência. No entanto, em uma série pode ser que não
exista um termo repetitivo e, portanto, essa série é denominada amodal. Por sua vez, se dois elementos ocorrem
com mais frequência, a série é chamada bimodal e, nos casos em que há mais de dois elementos se repetindo, a
repetição de uma série é multimodal ou polimodal.
No R existem duas formas para calcular a moda. Se a série for pequena, facilitando a identificação visual da moda,
usa-se a sintaxe table (series name) que reportará os elementos da série e, abaixo deles, mostrará com que
frequência cada um deles ocorre. Mas para casos em que a série é muito grande, o que tornará difícil a visualização, a
sintaxe subset (table (series names), table (series name) == max (table (series name))) é utilizada
e reportará o elemento modal e abaixo dele a frequência com que ocorre.
## Exemplo:

## criando uma série de dados qualquer

w <- c(1, 2, 3, 4, 4, 4, 5, 6, 7)

## visualmente encontrando a moda da série

table (w)

## w
## 1 2 3 4 5 6 7
3.1. MEDIDAS DE POSIÇÃO 15

## 1 1 1 3 1 1 1
Ou pode-se usar uma função que reportará o valor da moda, i.e., reportará o valor modal e não a frequência para
cada um dos elementos da série.
## Example:

## creating any data series

z <- c(1, 2, 3, 4, 4, 4, 5, 6, 7)

## finding the mode of the series

subset (table (z), table (z) == max (table (z)))

## 4
## 3
16 CAPÍTULO 3. ESTATÍSTICAS BÁSICAS
Capítulo 4

Regressão Linear Simples

Análise linear simples estuda a relação linear entre duas variáveis quantitativas. Sendo uma denominada de variável
dependente e a outra de variável indenpendente. Essa análise é realizada a partir de dois pontos de vista diferentes:
1. regressão → que expressa a forma da relação linear entre as duas variáveis e;
2. correlação → que quantifica a força desse relacionamento.
Essa relação é representada por um modelo matemático, i.e., por uma equação que associará a variável explicada à
variável explicativa. A representação matemática dessa associação é a seguinte:

𝑦 = 𝛽 0 + 𝛽1 𝑥 + 𝜇 (4.1)

em que:
𝑦 → é a variável explicada ou dependente que será calculada e, portanto, é aleatória;
𝛽0 e 𝛽1 → são os parâmetros desconhecidos do modelo que serão calculados. Quando se está trabalhando com a
população diz-se que essas são as estimativas, no entanto, se está trabalhando com uma amostra diz-se que essas
são os estimadores dos verdadeiros valores.
𝑥 → é a variável explicativa ou independente medida sem erro, i.e., sem aleatoriedade e;
𝜇 → é a variável aleatória residual na qual as outras variáveis que influenciam o comportamento da variável
dependente 𝑦, e que não foram incluídas no modelo matemático, são encontradas 𝑥. Ou seja, são influências na
variável explicada 𝑦 que não podem ser explicadas linearmente pelo comportamento da variável explicativa.

Exemplo 3.1: A Tabela 𝐼.1 do livro Econometria Básica, tradução da 5 edição, de Gujarati and Porter (2011,
p. 30) será usada nesse exemplo.

## Exemplo:

## criando um data.frame com os dados da Tabela I.1

pers_con <- data.frame(


year = c(1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969,
1970, 1971, 1972, 1973, 1974, 1975, 1975, 1977, 1978, 1979,
1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989,
1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
2000, 2001, 2002, 2003, 2004, 2005),
ecp = c(1597.4, 1630.3, 1711.1, 1781.6, 1888.4, 2007.7, 2121.8, 2185.0,
2310.5, 2396.4, 2451.9, 2545.5, 2701.3, 2833.8, 2812.3, 2876.9,
3035.5, 3164.1, 3303.1, 3383.4, 3374.1, 3422.2, 3470.3, 3668.6,

17
18 CAPÍTULO 4. REGRESSÃO LINEAR SIMPLES

3863.3, 4064.0, 4228.9, 4369.8, 4546.9, 4675.0, 4770.3, 4778.4,


4934.8, 5099.8, 5290.7, 5433.5, 5619.4, 5831.8, 6125.8, 6438.6,
6739.4, 6910.4, 7099.3, 7259.3, 7577.1, 7841.2),
gdp = c(2501.8, 2560.0, 2715.2, 2834.0, 2998.6, 3191.1, 3399.1, 3484.6,
3652.7, 3765.4, 3771.9, 3898.6, 4105.0, 4341.5, 4319.6, 4311.2,
4540.9, 4750.5, 5015.0, 5173.4, 5161.7, 5291.7, 5189.3, 5423.8,
5813.6, 6053.7, 6263.6, 6475.1, 6742.7, 6981.4, 7112.5, 7100.5,
7336.6, 7532.7, 7835.5, 8031.7, 8328.9, 8703.5, 9066.9, 9470.3,
9817.0, 9890.7, 10048.8, 10301.0, 10703.5, 11048.6)
)

## chamando o data.frame criado

pers_con

## year ecp gdp


## 1 1960 1597.4 2501.8
## 2 1961 1630.3 2560.0
## 3 1962 1711.1 2715.2
## 4 1963 1781.6 2834.0
## 5 1964 1888.4 2998.6
## 6 1965 2007.7 3191.1
## 7 1966 2121.8 3399.1
## 8 1967 2185.0 3484.6
## 9 1968 2310.5 3652.7
## 10 1969 2396.4 3765.4
## 11 1970 2451.9 3771.9
## 12 1971 2545.5 3898.6
## 13 1972 2701.3 4105.0
## 14 1973 2833.8 4341.5
## 15 1974 2812.3 4319.6
## 16 1975 2876.9 4311.2
## 17 1975 3035.5 4540.9
## 18 1977 3164.1 4750.5
## 19 1978 3303.1 5015.0
## 20 1979 3383.4 5173.4
## 21 1980 3374.1 5161.7
## 22 1981 3422.2 5291.7
## 23 1982 3470.3 5189.3
## 24 1983 3668.6 5423.8
## 25 1984 3863.3 5813.6
## 26 1985 4064.0 6053.7
## 27 1986 4228.9 6263.6
## 28 1987 4369.8 6475.1
## 29 1988 4546.9 6742.7
## 30 1989 4675.0 6981.4
## 31 1990 4770.3 7112.5
## 32 1991 4778.4 7100.5
## 33 1992 4934.8 7336.6
## 34 1993 5099.8 7532.7
## 35 1994 5290.7 7835.5
## 36 1995 5433.5 8031.7
## 37 1996 5619.4 8328.9
## 38 1997 5831.8 8703.5
## 39 1998 6125.8 9066.9
## 40 1999 6438.6 9470.3
4.1. IMPORTANDO UM BANCO DE DADOS COM R 19

## 41 2000 6739.4 9817.0


## 42 2001 6910.4 9890.7
## 43 2002 7099.3 10048.8
## 44 2003 7259.3 10301.0
## 45 2004 7577.1 10703.5
## 46 2005 7841.2 11048.6
## obtendo as estatísticas descritivas dos dados

summary (pers_con)

## year ecp gdp


## Min. :1960 Min. :1597 Min. : 2502
## 1st Qu.:1971 1st Qu.:2584 1st Qu.: 3950
## Median :1982 Median :3569 Median : 5358
## Mean :1982 Mean :4047 Mean : 6023
## 3rd Qu.:1994 3rd Qu.:5243 3rd Qu.: 7760
## Max. :2005 Max. :7841 Max. :11049

4.1 Importando um banco de dados com R


Todavia, no dia a dia os pesquisadores já possuem uma base em uma extensão qualquer, por exemplo .csv, e, então,
precisam importar esses dados para o R. Para qualquer extensão o procedimento mais prático é utilizar o processo
choose.files() que irá permitir ao usuário escolher o diretório em que se encontra a base. Por exemplo, para a
extensão .csv o comando para importar uma base é da seguinte forma:

## importando uma base extensão `.csv' no R no padrão norte americano

pers_con <- read.csv(choose.files())

Importante destacar que o comando read.csv funciona para bases .csv no padrão norte americano, i.e., as colunas
são separadas por vírgula e a casa decimal é representada por ponto. Contudo, se a base .csv estiver no padrão
brasileiro: colunas separadas por ponto e vírgula e a casa decimal é representada por vírgula o comando para
importar tal base seria:

## importando uma base extensão `.csv' no R no padrão brasileiro

pers_con <- read.csv2(choose.files())

Destaca-se que o comando summary reporta apenas algumas poucas estatísticas e, dessa forma, para realizar uma
análise mais completa sobre as variáveis em estudo pode-se empregar o comando describe do pacote psych. Esse
comando irá apresentar ao todo 11 estatísticas. A seguir apresenta-se cada uma delas:
𝑚𝑒𝑎𝑛 → representa a média aritmética da série;
𝑠𝑑 → representa o desvio padrão;
𝑚𝑒𝑑𝑖𝑎𝑛 → representa a mediana da série;
𝑡𝑟𝑖𝑚𝑚𝑒𝑑 → representa a média trimmed (trimmed mean) ou média truncada;
𝑚𝑎𝑑 → representa o desvio absoluto mediano (da mediana);
𝑚𝑖𝑛 → representa o valor mínimo;
𝑚𝑎𝑥 → representa o valor máximo;
𝑟𝑎𝑛𝑔𝑒 → representa o intervalo entre o valor mínimo e o valor máximo;
20 CAPÍTULO 4. REGRESSÃO LINEAR SIMPLES

𝑠𝑘𝑒𝑤 → representa a assimetria da série. Um valor igual a zero indica que a série é perfeitamente simétrica. Por
sua vez, quanto mais distante de zero, mais assimétrica será a série;
𝑘𝑢𝑟𝑡𝑜𝑠𝑖𝑠 → representa o achatamento dos dados da série em relação à curva da distribuição normal (ou de Gauss).
Para uma série normal esse valor é igual a 0. Séries com esse valor são denominadas de mesocúrtica. Para valores
maiores (> 0), então a série em questão é mais alta (afunilada) e concentrada do que a distribuição normal. Diz-se
que essa série é leptocúrtica. Já para valores menores (< 0) a série é mais achatada do que a distribuição normal.
Diz-se que essa série é platicúrtica. e;
𝑠𝑒 → representa o erro-padrão da série.

Para exemplificar o comando describe do pacote psych a seguir utiliza-se a variável gdp do data.frame pers_con e,
a partir das estatísticas descritivas reportadas pode-se identificar se a variável gdp possui uma distribuição normal.

## chamando o pacote `psych'

library(psych)

## obtendo as estatísticas descritivas para a variável `gdp' do data.frame `pers_con'

describe(pers_con$gdp)

## vars n mean sd median trimmed mad min max range skew


## X1 1 46 6022.94 2479.29 5357.75 5903.75 2592.7 2501.8 11048.6 8546.8 0.42
## kurtosis se
## X1 -1.04 365.55

4.2 Teste para normalidade Jarque-Bera e Shapiro-test


Para confirmar se a série possui uma distribuição normal ou não aplica-se o teste Jarque-Bera para normalidade
cujo o procedimento se dá através da comparação do valor da kurtosis e skewness. Para realizar esse teste utiliza-se
o comando jarque.bera.test do pacote tseries.

## chamando o pacote `tseries'

library(tseries)

## teste Jarque-Bera para normalidade da variável `gdp' do data.frame `pers_con'

jarque.bera.test(pers_con$gdp)

##
## Jarque Bera Test
##
## data: pers_con$gdp
## X-squared = 3.1944, df = 2, p-value = 0.2025

De posse do resultado do teste Jarque-Bera para normalidade não se rejeita a hipótese de normalidade se o valor p-
value for maior do que o nível de significância escolhido. Para o exemplo, nota-se que para os níveis de significância
padrão (1%, 5% e 10%) não se rejeita a hipótese de normalidade, i.e., a variável gdp possui uma distribuição
aproximadamente normal uma vez que o p-value é maior do que aqueles níveis de significância.

Outro teste para normalidade seria o Shapiro test cuja hipótese nula é: a série em questão é normalmente
distribuída.
4.2. TESTE PARA NORMALIDADE JARQUE-BERA E SHAPIRO-TEST 21

## realizando o teste Shapiro para normalidade

shapiro.test(pers_con$gdp)

##
## Shapiro-Wilk normality test
##
## data: pers_con$gdp
## W = 0.94175, p-value = 0.02276

O resultado desse teste ratifica o resultado do teste Jarque-Bera nos níveis de significância (5% e 10%), i.e., a série
gdp possui uma distribuição aproximadamente normal uma vez que a esses níveis não se rejeita a hipótese nula de
uma série normalmente distribuída.

Também pode-se “plotar” um histograma da série para uma análise visual para normalidade. A seguir, plota-se o
histograma para a série gdp do data.frame pers_con e adicionam-se a curva normal (linha azul) e a curva para a
série em questão, gdp (linha vermelha). Note que a linha em vermelha se aproxima de uma distribuição normal.

## plotando o histograma para a série `gdp' do data.frame `pers_con'

hist(pers_con$gdp, main = "Histograma para a série GDP", xlim = c(0, 14000),


ylim = c(0.00000, 0.00020), xlab = "GDP", col = "gray", probability = TRUE)

## adicionando a curva para análise visual de normalidade

curve(dnorm(x, mean = mean(pers_con$gdp), sd = sd(pers_con$gdp)), col = "darkblue",


lwd = 2, add = TRUE)

lines(density(pers_con$gdp), col = "red", lwd = 2)


22 CAPÍTULO 4. REGRESSÃO LINEAR SIMPLES

Histograma para a série GDP


0.00020
0.00010
Density

0.00000

0 2000 4000 6000 8000 10000 12000 14000

GDP

4.3 Correlação entre variáveis


Análises econométricas têm como ideia subjacente que as variávies y e x são relacionadas de alguma forma. Nesse
sentido, busca-se explicar quanto y varia dada uma variação em x. Destaca-se que y é denominada variável depen-
dente, variável explicada, variável de resposta, variável prevista ou regressando. Por sua vez, x é conhecida como
variável independente, variável explicativa, variável de controle, variável preditora ou regressor. Então, para testar
se y e x são relacionadas de alguma forma utiliza-se a análise de correlação.

Os valores da análise de correlação estarão sempre entre +1 e −1 e indicam a relação entre duas variáveis lineares. Em
que a magnitude da vairável indica a força da correlação e o sinal indica a direção da relação, se a correlação é positiva
ou negativa, i.e., se as variáveis são diretamente proporcionais ou inversamente proporcionais, respectivamente.

## calculando a correlação entre as variáveis do data.frame

cor (pers_con, use = 'complete.obs', method = 'kendall')

## year ecp gdp


## year 1.0000000 0.9956502 0.9879170
## ecp 0.9956502 1.0000000 0.9922705
## gdp 0.9879170 0.9922705 1.0000000

Uma vez realizada a análise de correlação, pode-se ainda determinar a magnitude da interdependência entre y e x.
A estatística covariância é uma medida do grau de interdependência numérica entre duas variáveis. Assim, se duas
variáveis são independentes umas das outras espera-se que elas tenham covariância igual a zero. Por sua vez, um
sinal positivo indica uma relação linear positiva enquanto um sinal negativo sinaliza uma relação linear negativa.
4.4. MÍNIMO QUADRADO ORDINÁRIO (MQO) 23

## calculando a covariância entre as variáveis do data.frame

cov (pers_con$ecp, pers_con$gdp)

## [1] 4433597

4.4 Mínimo Quadrado Ordinário (MQO)

O método do Mínimo Quadrado Ordinário (MQO) é um dos estimadores bastante utilizado em análises economé-
tricas, isto é, em estudos empíricos. O MQO caracteriza-se como sendo uma técnica de otimização matemática em
que se procura encontrar o melhor ajuste para um conjunto de dados buscando minimizar a soma dos quadrados
das diferenças entre o valor estimado e os dados observados. Salienta-se que o comando para o estimador MQO no
R é lm.

## estimando a regressão linear simples entre 'epc' and 'gdp'

reg <- lm (pers_con$ecp ~ pers_con$gdp)

## obtendo o resultado da regressão linear simples entre 'epc' and 'gdp'

summary (reg)

##
## Call:
## lm(formula = pers_con$ecp ~ pers_con$gdp)
##
## Residuals:
## Min 1Q Median 3Q Max
## -148.819 -49.780 -5.844 36.780 169.113
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -2.970e+02 2.814e+01 -10.56 1.23e-13 ***
## pers_con$gdp 7.213e-01 4.327e-03 166.70 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 71.96 on 44 degrees of freedom
## Multiple R-squared: 0.9984, Adjusted R-squared: 0.9984
## F-statistic: 2.779e+04 on 1 and 44 DF, p-value: < 2.2e-16

## plotando o gráfico para a regressão linear simples entre 'ecp' and 'gdp'

plot (pers_con$gdp, pers_con$ecp)


24 CAPÍTULO 4. REGRESSÃO LINEAR SIMPLES

8000
6000
pers_con$ecp

4000
2000

4000 6000 8000 10000

pers_con$gdp

## adicionando a linha da regressão linear simples estimada entre 'ecp' and 'gdp'
## e renomeando os eixos 'x' and 'y'

plot (pers_con$gdp, pers_con$ecp, xlab = 'gdp', ylab = 'ecp')


abline (lm (pers_con$ecp ~ pers_con$gdp), col = 'red', lwd = 2)
4.5. TESTE PARA FORMA FUNCIONAL RESET 25

8000
6000
ecp

4000
2000

4000 6000 8000 10000

gdp

4.5 Teste para forma funcional Reset


Para testar se a forma funcional está correta pode-se usar o teste RESET proposto por Ramsey (1969) e que está
disponível no pacote lmtest.

library (lmtest)

## Warning: package 'lmtest' was built under R version 3.5.3


## Warning: package 'zoo' was built under R version 3.5.3
resettest (pers_con$ecp ~ pers_con$gdp, power = 2, type = 'regressor')

##
## RESET test
##
## data: pers_con$ecp ~ pers_con$gdp
## RESET = 28.579, df1 = 1, df2 = 43, p-value = 3.238e-06

4.6 Obtendo os resíduos e os valores ajustados da regressão


Para obter os resíduos e os valores ajustados pode-se usar os seguintes comandos, respectivamente,

resid <- resid (reg)

fitted <- fitted (reg)


26 CAPÍTULO 4. REGRESSÃO LINEAR SIMPLES

4.7 Teste para a presença de heterocedasticidade


Para testar a presença de heterocedasticidade nos dados aplica-se o teste Breusch-Pagan proposto por Breusch and
Pagan (1979) contra a heterocedasticidade disponível no pacote lmtest.

bptest (pers_con$ecp ~ pers_con$gdp)

##
## studentized Breusch-Pagan test
##
## data: pers_con$ecp ~ pers_con$gdp
## BP = 20.183, df = 1, p-value = 7.037e-06

4.8 Interpretando a saída do MQO


O primeiro resultado reportado pela saída de uma estimação empregando o MQO (comando lm) é a forma funcional
estimada. Logo após, são apresentadas as estatísticas descritivas dos resíduos: valor mínimo, primeiro quartil,
mediana, terceiro quartil e valor máximo. Para uma distribuição normal espera-se que: o valor mínimo e o valor
máximo sejam idênticos (porém, com sinais opostos: negativo para o valor mínimo e positivo para o valor máximo)
bem como o primeiro quartil deve ser igual ao terceiro quartil (negativo para o primeiro quartil e positivo para o
terceiro quartil).

O próximo resultado são os coeficientes (coluna Estimate). O termo Intercept é denominado de constante e
representa o ponto em que a linha ajustada da regressão interceptará o eixo vertical do gráfico. Ademais, a inclusão
do 𝛽0 garante que os resíduos tenham uma média zero. Já o coeficiente gdp indica que con e gdp possuem uma
relação positiva, ou seja, ao aumentar a variável gdp (o x) o efeito será de um aumento na variável con (o y), isto
é, gdpimpactará positivamente con. Mais precisamente, ao aumetar o gdp em um unidade con aumentará por um
valor de 0, 07213.

A coluna Std. Error apresenta o valor do erro padrão para cada um dos coeficientes estimados medindo a confia-
bilidade do coeficiente. Quanto menor esse valor maior a confiabilidade dos coeficientes.

A estatística t value mostra o valor da estatística-t tabelada ou teste t das variáveis incluídas na equação
cujo objetivo é testar a hipótese do coeficiente ser igual a zero. Por sua vez, a coluna Pr(>|t|) apresenta a
probabilidade da estatística-t calculada seja superior à estatística-t tabelada e, assim, o coeficiente ser igual
a zero. Ademais, Signif. codes indica o nível de significância de rejeição da hipótese nula de coeficiente igual a
zero cujos intervalos são interpretados da seguinte forma:
1. ’***’ indica que a hipótese nula é rejeitada com um nível de significância entre 0 e 0.001;
2. ’**’ implica que a hipótese nula é rejeitada com um nível de significância entre 0.001 e 0.01;
3. ’*’ sinaliza que a hipótese nula é rejeitada com um nível de significância entre 0.01 e 0.05;
4. ’.’ representa que a hipótese nula é rejeitada com um nível de significância entre 0.05 e 0.1 e;
5. ’ ’ mostra que a hipótese nula é rejeitada com um nível de significância entre 0.1 e 1.
Capítulo 5

Reference

27
28 CAPÍTULO 5. REFERENCE
Referências Bibliográficas

Breusch, T. S. and Pagan, A. R. (1979). A simple test for heteroscedasticity and random coefficient variation.
Econometrica: Journal of the Econometric Society, pages 1287–1294.
Gujarati, D. N. and Porter, D. C. (2011). Econometria Básica. Editora Campus, Rio de Janeiro: Elsevier, 5 edition.
Ramsey, J. B. (1969). Tests for specification errors in classical linear least-squares regression analysis. Journal of
the Royal Statistical Society. Series B (Methodological), pages 350–371.

29

View publication stats

Você também pode gostar