You are on page 1of 4

Comandos do R

:

Entrada de Dados:

Os dados devem ser salvos no formato texto (extensão .txt) e as variáveis devem estar
em coluna.

Suponha que eu tenha o arquivo dados.txt que contêm as seguintes variáveis:

lnsalhor draca dgenero tenure idade
.8209805 1 1 0 32
1.203973 1 1 16 54
.9162908 1 0 3 23
.9162908 0 1 3 22
.8472978 0 1 1 23
.8472978 0 1 1 22
1.252763 1 1 8 55
1.203973 1 1 5 30
.4855078 1 1 0 29
.6286086 0 0 0 23

Os dados devem estar no formato acima.

Suponha que tenhamos salvo este arquivo na pasta c:\econometria
Para ler os dados no R, usar o comando “read.table” (ler tabela) :

> dados <- read.table(“c:\\econometria\\dados.txt”, header=T)

A seta <- indica que estamos criando um objeto dentro do R chamado “dados” (pode-se
dar qualquer nome ao objeto, neste caso chamei-o de “dados”, porém deve-se evitar dar
nomes que sejam os dos comandos, por exemplo, não usar o nome “lm” que é o
comando para se rodar uma regressão (quer dizer lm=”linear model”)

O argumento “header=T” (T = true ou verdadeiro) quer dizer que há cabeçalho no
arquivo de dados, ou seja, este inclui os nomes das variáveis. Caso contrário, na
audência de cabeçalho, usaria-se “header=F” (F = false ou falso).

No R este arquivo foi salvo com o nome “dados”. Para ver isto use o comando “ls”
(que vem de “list” (listar)):

> ls( )

O comando read.table salva os dados no R em forma de matriz. Para checar isso, dar o
comando:

> is.matrix(dados)

Se T, então é matriz, caso contrário o programa retornaria F.

Para saber a dimensão da matriz usa-se:
> dim(dados)

Se um objeto no R, no caso o objeto “dados” for uma matriz, as linhas e as colunas da
mesma podem ser acessadas usando chaves após o nome do objeto. Isto é:

> dados[i, j]
nos dá o número da “linha i” e “coluna j”.

Podemos tirar a média da variável na coluna 2 usando o comando “mean” (média):

> mean(dados[ ,2])

Nota: no comando acima foi omitido o número da linha, na ausência deste número o
programa lê como se fosse todas as linhas (ou seja, a coluna completa).

A variância (da variável na coluna 2), por sua vez, pode ser calculada usando-se:

> var(dados[ ,2])

Para se ter um resumo de algumas estatísticas descritivas, pode-se usar o comando
“summary”:

> summary(dados[ , 2])

O ajuste da regressão pode ser feito através do comando “lm” (linear model ou modelo
linear). Assumindo que a variável dependente esteja na primeira coluna, poderíamos
usar o seguinte:

> lm(dados[ ,1] ~ dados[ , -1])

A forma deste comando é y ~ X. Acima dados[, 1] pega a primeira coluna (variável
dependente) e dados[ , -1] pega todas as colunas com exceção da primeira (ou seja,
matrix X ou covariáveis).

Abaixo seguem os comandos e o que aparece na tela do R quando uso os dados
fornecidos.

> dados <- read.table("c:\\dadosreg.txt", header=T) \\ leitura dos dados, cria-se o objeto
“dados” salvo no R
> dados <- as.matrix(dados) \\ colocando em forma de matriz
> is.matrix(dados) \\ confirmando que está em forma de
matriz
[1] TRUE
> dim(dados) \\ dimensão da matriz
[1] 500 12
> summary(dados) \\ nos dá as estatísticas descritivas das
dgenero variáveis (recortei e colei apenas
Min. :0.000 parte do que aparece na tela)
1st Qu.:0.000
Median :1.000
Mean :0.594
3rd Qu.:1.000
Max. :1.000
> mean(dados[,1]) \\ média variável na 1ª coluna
[1] 1.059095
> var(dados[,1]) \\ variância da variável na 1ª coluna
[1] 0.577803
> ls( ) \\ lista os objetos que foram criados
[1] "dados"
> regmqo <- lm(dados[,1]~dados[,-1]) \\ roda a regressão de MQO usando
a variável na coluna 1 como a
dependente e como covariáveis as
demais colunas (todas menos a
primeira). Os resultados da
regressão são salvos no objeto
denominado “regmqo”.
> regmqo \\ para que um objeto apareça na
tela, simplesmente digitar seu nome
e apertar <enter>

> regmqo

Call:
lm(formula = dados[, 1] ~ dados[, -1])

Coefficients:
(Intercept) dados[, -1]dprim dados[, -1]dginasio dados[, -1]d2grau dados[,
-1]d3grau dados[, -1]dgenero
0.4476 0.2262 0.2206 0.7115 1.6510
0.3701

\\ nos dá os coeficientes das 5 variáveis explicativas mais o do intercepto

> summary(regmqo) \\ nos dá uma tabela com estimativas
e estatísticas t
Call:
lm(formula = dados[, 1] ~ dados[, -1])

Residuals:
Min 1Q Median 3Q Max
-1.64909 -0.42985 -0.08127 0.38321 2.86545

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.44762 0.07840 5.710 1.96e-08 ***
dados[, -1]dprim 0.22617 0.08465 2.672 0.00779 **
dados[, -1]dginasio 0.22065 0.09261 2.383 0.01757 *
dados[, -1]d2grau 0.71154 0.08939 7.960 1.19e-14 ***
dados[, -1]d3grau 1.65098 0.13427 12.296 < 2e-16 ***
dados[, -1]dgenero 0.37011 0.05948 6.222 1.05e-09 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.6402 on 494 degrees of freedom
Multiple R-Squared: 0.2979, Adjusted R-squared: 0.2908
F-statistic: 41.91 on 5 and 494 DF, p-value: < 2.2e-16