Hi, You can also use: do.call(rbind,lapply(split(dat1,dat1$ID),function(x) head(x[x$COMPL!=0,],1))) # ID COMPL SEX HEREDITY #1 1 3 1 2 #2 2 1 0 1 #3 3 2 0 1
----- Original Message ----- From: Tasnuva Tabassum <t.tasn...@gmail.com> To: r-help@r-project.org Cc: Sent: Saturday, February 23, 2013 9:28 AM Subject: [R] Selecting First Incidence from Longitudinal Data I have a longitudinal competing risk data of the form: ID COMPL SEX HEREDITY 1 0 1 2 1 0 1 2 1 3 1 2 2 0 0 1 2 1 0 1 2 2 0 1 2 2 0 1 3 0 0 1 3 0 0 1 3 0 0 1 3 0 0 1 3 2 0 1 4 0 1 2 4 0 1 2. Where, COMPL= health complication of diabetic patients which has value labels as 0= no complication,1=coronary heart disease, 2=retinopathy, 3= nephropathy. I want to select only the first complication that occurred to each patient. What R function can I use? [[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. ______________________________________________ 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.