Hello,

You can use ?aggregate and ?head to do what you want. Try the following.



dat <- read.table(text="
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
", header = TRUE)

aggregate(. ~ ID, data = subset(dat, COMPL != 0), head, 1)


Hope this helps,

Rui Barradas

Em 23-02-2013 14:28, Tasnuva Tabassum escreveu:
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.

Reply via email to