[R] Selecting First Incidence from Longitudinal Data
arun
smartpink111 at yahoo.com
Sat Feb 23 21:09:14 CET 2013
HI,
Tried your approach:
dat1$sequence <- as.vector(unlist(lapply( aggregate(dat1$ID, by=list(dat1$ID),FUN=length)$x, FUN=function(x){seq(1, x)})))
dat0 <- dat1[dat1$sequence==1 & dat1$COMPL!= 0, ] #your second solution
dat0
#[1] ID COMPL SEX HEREDITY sequence
#<0 rows> (or 0-length row.names)
dat1[dat1$sequence==1,] #here the OP wanted first incidence where COMPL!=0
# ID COMPL SEX HEREDITY sequence
#1 1 0 1 2 1
#4 2 0 0 1 1
#8 3 0 0 1 1
#13 4 0 1 2 1
A.K.
----- Original Message -----
From: Xiaogang Su <xiaogangsu at gmail.com>
To: Rui Barradas <ruipbarradas at sapo.pt>
Cc: r-help at r-project.org
Sent: Saturday, February 23, 2013 2:15 PM
Subject: Re: [R] Selecting First Incidence from Longitudinal Data
Try this:
dat$sequence <- as.vector(unlist(lapply( aggregate(dat$ID, by=list(x),
FUN=length)$x, FUN=function(x){seq(1, x))))
dat0 <- dat[dat$sequence==1, ]
HTH, X
On Sat, Feb 23, 2013 at 1:07 PM, Rui Barradas <ruipbarradas at sapo.pt> wrote:
> 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 at r-project.org mailing list
>> https://stat.ethz.ch/mailman/**listinfo/r-help<https://stat.ethz.ch/mailman/listinfo/r-help>
>> PLEASE do read the posting guide http://www.R-project.org/**
>> posting-guide.html <http://www.R-project.org/posting-guide.html>
>> and provide commented, minimal, self-contained, reproducible code.
>>
>>
> ______________________________**________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/**listinfo/r-help<https://stat.ethz.ch/mailman/listinfo/r-help>
> PLEASE do read the posting guide http://www.R-project.org/**
> posting-guide.html <http://www.R-project.org/posting-guide.html>
> and provide commented, minimal, self-contained, reproducible code.
>
--
==============================
Xiaogang Su, Ph.D.
Associate Professor & Statistician
School of Nursing, University of Alabama
Birmingham, AL 35294-1210
(205) 934-2355 [Office]
xgsu at uab.edu
xiaogangsu at gmail.com
https://sites.google.com/site/xgsu00/
[[alternative HTML version deleted]]
______________________________________________
R-help at 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.
More information about the R-help
mailing list