Rozwiń dane niezrównoważone na panel miesięczny

Mam zestaw danych, który wygląda następująco, który chciałbym rozwinąć do miesięcznego zestawu danych panelu.

<code>ID | start_date | end_date | event_type |
 1 |   01/01/97 | 08/01/98 |          1 |
 2 |   02/01/97 | 10/01/97 |          1 |
 3 |   01/01/96 | 12/01/04 |          2 |
</code>

Niektóre przypadki trwają dłużej niż inne. Zorientowałem się, jak rozszerzyć dane do rocznej konfiguracji, wyciągając rok z każdej daty, a następnie używając:

<code>year <- ddply(df, c("ID"), summarize, year = seq(startyear, endyear))
</code>

śledzony przez:

<code>month <- ddply(year, c("ID"), summarize, month = seq(1, 12))
</code>

Problem z tym podejściem polega na tym, że nie przypisuje poprawnego numeru dla miesiąca, tj. Stycznia = 1, a więc nie działa dobrze z zestawem danych o zdarzeniach, z którym chciałbym go w końcu połączyć, gdzie chciałbym bądź dopasowanyyear, ID, imonth. Pomoc zostanie doceniona. Oto bezpośredni link do zestawu danych, który próbuję rozwinąć (.xls):http://db.tt/KeLRCzr9. Mam nadzieję, że mam wystarczająco dużo informacji, ale proszę dać mi znać, jeśli potrzebne są inne informacje.

questionAnswers(2)

yourAnswerToTheQuestion