У меня есть следующая проблема, для которой я не могу найти хороший способ ее исправить.Скажем, у меня есть набор данных панели, состоящий из субъектов, которые проходили лечение (в разное время).
Воспроизводимый пример:
df <- data.frame(subject = rep(c("A", "B"), each = 6),
period = rep(c(2006:2011), 2),
treatment = c(0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0))
Теперь я хочу создать индикаторную переменную 'post', равную единицеза все периоды после обработки, такие, что данные выглядят так:
subject period treatment post
1 A 2006 0 0
2 A 2007 1 1
3 A 2008 0 1
4 A 2009 0 1
5 A 2010 0 1
6 A 2011 0 1
7 B 2006 0 0
8 B 2007 0 0
9 B 2008 1 1
10 B 2009 0 1
11 B 2010 0 1
12 B 2011 0 1
Я пытался решить эту проблему с помощью лагов и т. д., но код становится неоправданно запутанным.Что бы элегантно решить этот вопрос?
Спасибо