The assignment is worth 100 points. There are 3 questions. You should have the following packages installed:
In this problem set you will replicate some results from the paper “Do Workers Work More if Wages Are High? Evidence from a Randomized Field Experiment” (Fehr and Goette, AER 2007).
[Q1] The authors calculate an elasticity of effort per shit of -0.24. Replicate this finding using data from
tables1to4. See pages 309, 311 and the slideshow in Canvasnotes_on_fg2007.pdf. You don’t have to replicate the regressions, but you should replicate the averages.
StatsC <- data %>%
filter(maxhigh == 1) %>%
filter(block > 1) %>%
group_by(block, odd) %>%
summarise(mean(totrev))
StatsC## # A tibble: 4 × 3
## # Groups: block [2]
## block odd `mean(totrev)`
## <int> <int> <dbl>
## 1 2 0 3006.
## 2 2 1 4131.
## 3 3 0 3676.
## 4 3 1 2734.
RevenuePer1 <- (3006+4131)/2
RevenuePer2 <- (3676+2734)/2
Treatment <- 1000
SalaryIncrease <- 0.25
ElasticityRevenue1 <- (Treatment/RevenuePer1)/SalaryIncrease
ElasticityRevenue2 <- (Treatment/RevenuePer2)/SalaryIncrease
StatsD <- data %>%
filter(maxhigh == 1) %>%
filter(block > 1) %>%
group_by(block, odd) %>%
summarise(mean(shifts))
StatsD## # A tibble: 4 × 3
## # Groups: block [2]
## block odd `mean(shifts)`
## <int> <int> <dbl>
## 1 2 0 9.85
## 2 2 1 14
## 3 3 0 12.6
## 4 3 1 8.73
ShiftsPer1 <- (9.85+14)/2
ShiftsPer2 <- (12.6+8.73)/2
Treatment2 <- 4
ElasticityShifts1 <- (Treatment2/ShiftsPer1)/SalaryIncrease
ElasticityShifts2 <- (Treatment2/ShiftsPer2)/SalaryIncrease
ElasticityOfShifts <- (ElasticityShifts1+ElasticityShifts2)/2
ElasticityRevenue <- (ElasticityRevenue1+ElasticityRevenue2)/2
ElasticityOfEffortPerShift <- ElasticityRevenue - ElasticityOfShifts
ElasticityOfEffortPerShift## [1] -0.2364922
[Q2] Use
tables5to6to replicate the same elasticity.
m51 = data2 %>%
filter(fixed == 1 & maxhigh == 1 & fahrer != 27 & tag != 0 & tag != 6) %>%
feols(lnum ~ high + female + lnten|fahrer + datum, data =.) %>%
coef()
m51## high lnten
## -0.06009999 0.01501328
## high
## -0.06009999
## high
## -0.2404
[Q3] Replicate specifications (1) and (2) in Table 6. Use
etable()infixestto present the results. You will find the code fortables5to6.doinstructive: https://www.openicpsr.org/openicpsr/project/116259/version/V1/view
## Table6_1 Table6_2
## Dependent Var.: lnum lnum
##
## high_not -0.0273 (0.0308) -0.0270 (0.0308)
## high_la -0.1048* (0.0467)
## lnten 0.0015 (0.0239) 0.0074 (0.0305)
## high_la1 -0.0853 (0.0701)
## high_la2 -0.1199* (0.0553)
## Fixed-Effects: ----------------- -----------------
## fahrer Yes Yes
## datum Yes Yes
## _______________ _________________ _________________
## S.E.: Clustered by: fahrer by: fahrer
## Observations 1,137 1,137
## R2 0.25994 0.26009
## Within R2 0.00700 0.00720
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1