I have the following data.table,
   id time event
1:  1    1     1
2:  1    2     0
3:  2    1     0
4:  2    2     1
# Generate data;
library(data.table)
data <- data.table(
    id = c(1,1,2,2),
    time = c(1,2,1,2),
    event = c(1,0,0,1)
)
I want to retain all rows up until event == 1, such that the data looks like
   id time event
1:  1    1     1
2:  2    1     0
3:  2    2     1
I'm looking for a data.table solution.