I have a dataset that looks like this:
date |country | crisis |
2011 q2 | AT | 0 |
2011 q3 | AT | 0 |
2011 q4 | AT | 1 |
2012 q1 | AT | 0 |
2012 q2 | AT | 1 |
2011 q1 | BE | 0 |
2011 q3 | BE | 0 |
2011 q4 | BE | 0 |
2012 q1 | BE | 1 |
2012 q2 | BE | 0 |
And I would like to compute another variable for each country-crisis pair that is 0 when crisis is 1 and then create a sequence from -24 to +24 starting from zero, like this
date |country | crisis | AT_crisis1 | AT_crisis2 | BE_crisis 1
2011 q2 | AT | 0 | -2 | -4 | NA
2011 q3 | AT | 0 | -1 | -3 | NA
2011 q4 | AT | 1 | 0 | -2 | NA
2012 q1 | AT | 0 | 1 | -1 | NA
2012 q2 | AT | 1 | 2 | 0 | NA
2011 q1 | BE | 0 | NA | NA | -3
2011 q3 | BE | 0 | NA | NA | -2
2011 q4 | BE | 0 | NA | NA | -1
2012 q1 | BE | 1 | NA | NA | 0
2012 q2 | BE | 0 | NA | NA | +1
Here a reproducible example for the first dataset
library(zoo)
date <- c("2011Q2","2011Q3","2011Q4","2012Q1","2012Q2","2011Q2","2011Q3","2011Q4","2012Q1","2012Q2")
date <- as.yearqtr(date)
country <- c("AT","AT","AT","AT","AT","BE","BE","BE","BE","BE")
crisis <- c(0,0,1,0,1,0,0,0,1,0)
df <- data.frame(date, country, crisis)
Thank you.