Many thanks; using Gabor's advice I'd used: with(myData, rep(time, evid)[cumsum(evid)])
but yours also works a treat Henrique. Thanks once again! Jim. Henrique Dallazuanna wrote: > > If I understand, try this: > > with(myData, factor(cumsum(evid), labels = which(evid == 1))) > > > On Thu, Jul 3, 2008 at 3:19 PM, Jim Price <[EMAIL PROTECTED]> wrote: > >> >> All, >> >> I am constructing a pharmacokinetic dataset and have hit a snag. The >> dataset >> can be demonstrated in the following way: >> >> >> >> myData <- data.frame( >> evid = c(1, 0, 0, 0, 1, 0, 1, 1, 1, 0), >> time = 1:10, >> last.dose.time = c(1, 1, 1, 1, 5, 5, 7, 8, 9, 9) >> ) >> >> >> The evid field is an indicator variable for whether the associated >> observation is a dosing record (when it takes value 1) or an observation >> (where it takes value 0). The time field is a date-time record for the >> associated dose / observation event. I'm trying to calculate the time >> since >> the last dose for each observation event - to support that, the data I'd >> like to end up with is contained in last.dose.time, which gives the time >> at >> which the last dosing event occured. >> >> The problem is in calculating the last.dose.time field; this is the first >> time I've done this particular kind of data manipulation in R and I just >> can't get my head around the code to solve it. >> >> I've been eyeballing rle and I think there may be a solution hiding in >> there >> somewhere, but I'm still failing to progress. Any help would be >> appreciated! >> >> >> Thanks in advance, >> >> Jim Price >> Cardiome Pharma. Corp. >> >> -- >> View this message in context: >> http://www.nabble.com/Remembering-the-last-time-an-event-occurred-within-a-dataframe-tp18265464p18265464.html >> Sent from the R help mailing list archive at Nabble.com. >> >> ______________________________________________ >> R-help@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide >> http://www.R-project.org/posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. >> > > > > -- > Henrique Dallazuanna > Curitiba-Paraná-Brasil > 25° 25' 40" S 49° 16' 22" O > > [[alternative HTML version deleted]] > > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > > -- View this message in context: http://www.nabble.com/Remembering-the-last-time-an-event-occurred-within-a-dataframe-tp18265464p18265953.html Sent from the R help mailing list archive at Nabble.com. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.