Exercício 1

Os dados em 401K.RData são usados para estudar a relação entre a participação em um plano de pensão dos Estados Unidos e a generosidade do plano. A variável \(prate\) é a percentagem de trabalhadores com uma conta ativa; essa é a variável que gostaríamos de explicar. A medida de generosidade é a taxa de complementação do plano, \(mrate\). Essa variável dá a quantidade média com a qual a firma contribui, em cada plano do trabalhador, para cada $ 1 de contribuição do trabalhador. Por exemplo, se \(mrate = 0,50\), cada \(\$ 1\) de contribuição do trabalhador é complementado por uma contribuição de \(50\) centavos pela firma.

dir.dados <- "G:/Meu Drive/EACH/Disciplinas/ACH3657 - Métodos Quantitativos para Avaliação de Políticas Públicas/Aulas/dados/wooldridge"
load(file.path(dir.dados, "401k.RData"))

Vamos mudar o nome dos conjuntos de dados e fazer uma visualização do seu conteúdo:

dados.401k <- data
desc.401k <- desc
desc.401k
##   variable                           label
## 1    prate     participation rate, percent
## 2    mrate            401k plan match rate
## 3  totpart         total 401k participants
## 4   totelg    total eligible for 401k plan
## 5      age                age of 401k plan
## 6   totemp  total number of firm employees
## 7     sole = 1 if 401k is firm's sole plan
## 8  ltotemp                   log of totemp
head(dados.401k)
##   prate mrate totpart totelg age totemp sole  ltotemp
## 1  26.1  0.21    1653   6322   8   8709    0 9.072112
## 2 100.0  1.42     262    262   6    315    1 5.752573
## 3  97.6  0.91     166    170  10    275    1 5.616771
## 4 100.0  0.42     257    257   7    500    0 6.214608
## 5  82.5  0.53     591    716  28    933    1 6.838405
## 6 100.0  1.82      92     92   7    143    1 4.962845

Obs. Visualize melhor os data frames no RStudio com:

View(desc.401k)
View(dados.401k)

Uma outra forma de inspeção:

str(dados.401k)
## 'data.frame':    1534 obs. of  8 variables:
##  $ prate  : num  26.1 100 97.6 100 82.5 ...
##  $ mrate  : num  0.21 1.42 0.91 0.42 0.53 ...
##  $ totpart: num  1653 262 166 257 591 ...
##  $ totelg : num  6322 262 170 257 716 ...
##  $ age    : int  8 6 10 7 28 7 31 13 21 10 ...
##  $ totemp : num  8709 315 275 500 933 ...
##  $ sole   : int  0 1 1 0 1 1 1 0 1 1 ...
##  $ ltotemp: num  9.07 5.75 5.62 6.21 6.84 ...
##  - attr(*, "datalabel")= chr ""
##  - attr(*, "time.stamp")= chr "25 Jun 2011 23:03"
##  - attr(*, "formats")= chr  "%7.0g" "%7.0g" "%7.0g" "%7.0g" ...
##  - attr(*, "types")= int  254 254 254 254 251 254 251 254
##  - attr(*, "val.labels")= chr  "" "" "" "" ...
##  - attr(*, "var.labels")= chr  "participation rate, percent" "401k plan match rate" "total 401k participants" "total eligible for 401k plan" ...
##  - attr(*, "version")= int 10

(i) Ache a taxa de participação média e a taxa de complementação média na amostra de planos.

summary(dados.401k)
##      prate            mrate           totpart            totelg       
##  Min.   :  3.00   Min.   :0.0100   Min.   :   50.0   Min.   :   51.0  
##  1st Qu.: 78.03   1st Qu.:0.3000   1st Qu.:  156.2   1st Qu.:  176.0  
##  Median : 95.70   Median :0.4600   Median :  276.0   Median :  330.0  
##  Mean   : 87.36   Mean   :0.7315   Mean   : 1354.2   Mean   : 1628.5  
##  3rd Qu.:100.00   3rd Qu.:0.8300   3rd Qu.:  749.5   3rd Qu.:  890.5  
##  Max.   :100.00   Max.   :4.9100   Max.   :58811.0   Max.   :70429.0  
##       age            totemp            sole           ltotemp      
##  Min.   : 4.00   Min.   :    58   Min.   :0.0000   Min.   : 4.060  
##  1st Qu.: 7.00   1st Qu.:   261   1st Qu.:0.0000   1st Qu.: 5.565  
##  Median : 9.00   Median :   588   Median :0.0000   Median : 6.377  
##  Mean   :13.18   Mean   :  3568   Mean   :0.4876   Mean   : 6.686  
##  3rd Qu.:18.00   3rd Qu.:  1804   3rd Qu.:1.0000   3rd Qu.: 7.498  
##  Max.   :51.00   Max.   :144387   Max.   :1.0000   Max.   :11.880

(ii) Agora, estime a equação de regressão simples

\[\hat{prate} = \hat{\beta_0} + \hat{\beta_1} mrate\]

e relate seus resultados juntamente com o tamanho da amostra.

lm(prate ~ mrate , data = dados.401k)
## 
## Call:
## lm(formula = prate ~ mrate, data = dados.401k)
## 
## Coefficients:
## (Intercept)        mrate  
##      83.075        5.861

Vejamos com mais detalhes:

modelo <- lm(prate ~ mrate , data = dados.401k)
summary(modelo)
## 
## Call:
## lm(formula = prate ~ mrate, data = dados.401k)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -82.303  -8.184   5.178  12.712  16.807 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  83.0755     0.5633  147.48   <2e-16 ***
## mrate         5.8611     0.5270   11.12   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 16.09 on 1532 degrees of freedom
## Multiple R-squared:  0.0747, Adjusted R-squared:  0.0741 
## F-statistic: 123.7 on 1 and 1532 DF,  p-value: < 2.2e-16

(iii) Interprete o intercepto de sua equação. Interprete o coeficiente de \(mrate\).

coefficients(modelo)
## (Intercept)       mrate 
##   83.075455    5.861079

83.075455 é o valor esperado da taxa de particpação (prate) quando a taxa de contribuição (mrate) é zero.

(iv) Ache o \(prate\) predito quando \(mrate = 3,5\). Essa predição é razoável? Explique o que está acontecendo.

\[ \hat{prate} = \beta_0 + \beta_1 \ mrate \] \[ \hat{prate} = 83.07 + 5.86 \ mrate\] Subtituindo \(mrate = 3.5\), obtemos:

\[ \hat{prate} = 83.07 + 5.86 \times 3.5 = 103.58 \]

Ou:

modelo$coefficients[1] + modelo$coefficients[2] * 3.5
## (Intercept) 
##    103.5892

Exercício 2

Os dados em ceosal2.RData contêm informações sobre chefes-executivos (CEOs) de corporações dos Estados Unidos. A variável \(salary\) é a compensação anual, em milhares de dólares, e \(ceoten\) é o número de anos na condição de CEO na companhia.

load(file.path(dir.dados, "ceosal2.RData"))
dados.ceosal <- data
desc.ceosal <- desc
head(dados.ceosal)
##   salary age college grad comten ceoten sales profits mktval  lsalary
## 1   1161  49       1    1      9      2  6200     966  23200 7.057037
## 2    600  43       1    1     10     10   283      48   1100 6.396930
## 3    379  51       1    1      9      3   169      40   1100 5.937536
## 4    651  55       1    0     22     22  1100     -54   1000 6.478509
## 5    497  44       1    1      8      6   351      28    387 6.208590
## 6   1067  64       1    1      7      7 19000     614   3900 6.972606
##     lsales   lmktval comtensq ceotensq  profmarg
## 1 8.732305 10.051908       81        4 15.580646
## 2 5.645447  7.003066      100      100 16.961130
## 3 5.129899  7.003066       81        9 23.668638
## 4 7.003066  6.907755      484      484 -4.909091
## 5 5.860786  5.958425       64       36  7.977208
## 6 9.852194  8.268732       49       49  3.231579
desc.ceosal
##    variable                          label
## 1    salary      1990 compensation, $1000s
## 2       age                       in years
## 3   college         =1 if attended college
## 4      grad =1 if attended graduate school
## 5    comten             years with company
## 6    ceoten      years as ceo with company
## 7     sales      1990 firm sales, millions
## 8   profits         1990 profits, millions
## 9    mktval market value, end 1990, mills.
## 10  lsalary                    log(salary)
## 11   lsales                     log(sales)
## 12  lmktval                    log(mktval)
## 13 comtensq                       comten^2
## 14 ceotensq                       ceoten^2
## 15 profmarg          profits as % of sales

(i) Ache o salário médio e a permanência média da amostra.

summary(dados.ceosal$salary)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   100.0   471.0   707.0   865.9  1119.0  5299.0
summary(dados.ceosal$ceoten)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.000   3.000   6.000   7.955  11.000  37.000

(ii) Quantos CEOs estão em seu primeiro ano na posição de CEO (isto é, permceo = 0)? Qual é a permanência mais longa como CEO?

table(dados.ceosal == 0)
## 
## FALSE  TRUE 
##  2557    98
max(dados.ceosal$ceoten)
## [1] 37

(iii) Estime o modelo de regressão simples

\[salary = \beta_0 + \beta_1 \ ceoten + u\]

e relate seus resultados na forma usual.

modelo.ceo <- lm(salary ~ ceoten, data = dados.ceosal)
summary(modelo.ceo)
## 
## Call:
## lm(formula = salary ~ ceoten, data = dados.ceosal)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -977.8 -345.9 -169.4  263.8 4373.9 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  772.426     65.676  11.761   <2e-16 ***
## ceoten        11.746      6.148   1.911   0.0577 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 583.2 on 175 degrees of freedom
## Multiple R-squared:  0.02043,    Adjusted R-squared:  0.01484 
## F-statistic: 3.651 on 1 and 175 DF,  p-value: 0.05769

(iv) Qual é o aumento do salário predito (aproximado) no salário, dado um ano a mais como CEO?

Essa é justamente a intepretação de \(\beta_1\) (no caso, \(ceoten\)). Assim, o aumento esperado no salário dado um ano a mais como CEO é:

coefficients(modelo.ceo)[2]
##   ceoten 
## 11.74613

Exercício 3

Use os dados em sleep75.RData, de Biddle e Hamermesh (1990), para estudar se há relação entre o tempo gasto dormindo por semana e o tempo gasto em um trabalho pago.

load(file.path(dir.dados, "sleep75.RData"))
dados.sleep <- data
desc.sleep <- desc
head(dados.sleep)
##   age black case clerical construc educ earns74 gdhlth inlf leis1 leis2
## 1  32     0    1        0        0   12       0      0    1  3529  3479
## 2  31     0    2        0        0   14    9500      1    1  2140  2140
## 3  44     0    3        0        0   17   42500      1    1  4595  4505
## 4  30     0    4        0        0   12   42500      1    1  3211  3211
## 5  64     0    5        0        0   14    2500      1    1  4052  4007
## 6  41     0    6        0        0   12       0      1    1  4812  4797
##   leis3 smsa  lhrwage   lothinc male marr prot rlxall selfe sleep slpnaps
## 1  3479    0 1.955861 10.075380    1    1    1   3163     0  3113    3163
## 2  2140    0 0.357674  0.000000    1    0    1   2920     1  2920    2920
## 3  4227    1 3.021887  0.000000    1    1    0   3038     1  2670    2760
## 4  3211    0 2.263844  0.000000    0    1    1   3083     1  3083    3083
## 5  4007    0 1.011601  9.328213    1    1    1   3493     0  3448    3493
## 6  4797    0 2.957511 10.657280    1    1    1   4078     0  4063    4078
##   south spsepay spwrk75 totwrk union worknrm workscnd exper yngkid yrsmarr
## 1     0       0       0   3438     0    3438        0    14      0      13
## 2     1       0       0   5020     0    5020        0    11      0       0
## 3     0   20000       1   2815     0    2815        0    21      0       0
## 4     0    5000       1   3786     0    3786        0    12      0      12
## 5     0    2400       1   2580     0    2580        0    44      0      33
## 6     0       0       0   1205     0       0     1205    23      0      23
##      hrwage agesq
## 1  7.070004  1024
## 2  1.429999   961
## 3 20.529997  1936
## 4  9.619998   900
## 5  2.750000  4096
## 6 19.249998  1681
desc.sleep
##    variable                          label
## 1       age                       in years
## 2     black                    =1 if black
## 3      case                     identifier
## 4  clerical          =1 if clerical worker
## 5  construc      =1 if construction worker
## 6      educ             years of schooling
## 7   earns74           total earnings, 1974
## 8    gdhlth =1 if in good or excel. health
## 9      inlf           =1 if in labor force
## 10    leis1                 sleep - totwrk
## 11    leis2               slpnaps - totwrk
## 12    leis3                rlxall - totwrk
## 13     smsa             =1 if live in smsa
## 14  lhrwage                log hourly wage
## 15  lothinc  log othinc, unless othinc < 0
## 16     male                     =1 if male
## 17     marr                  =1 if married
## 18     prot               =1 if Protestant
## 19   rlxall      slpnaps + personal activs
## 20    selfe            =1 if self employed
## 21    sleep    mins sleep at night, per wk
## 22  slpnaps       minutes sleep, inc. naps
## 23    south            =1 if live in south
## 24  spsepay            spousal wage income
## 25  spwrk75             =1 if spouse works
## 26   totwrk           mins worked per week
## 27    union          =1 if belong to union
## 28  worknrm             mins work main job
## 29 workscnd           mins work second job
## 30    exper                 age - educ - 6
## 31   yngkid     =1 if children < 3 present
## 32  yrsmarr                  years married
## 33   hrwage                    hourly wage
## 34    agesq                          age^2

Queremos estimar o modelo

\[sleep = \beta_0 + \beta_1 \ totwrk + u\]

em que \(sleep\) corresponde a minutos gastos dormindo a noite por semana, e \(totwrk\) e o total de minutos trabalhados durante a semana.

(i) Como você espera que seja o sinal de \(\beta_1\)? Por quê?

(ii) Estime a equação e reporte seus resultados, juntamente com o número de observações. O que o intercepto significa nessa equação?

(iii) Se \(totwrk\) aumenta em duas horas, em quanto se estima que dormir ira cair? Você acha que isso é um efeito grande? Justifique.