Skip to content

selecting certain rows from data frame

1 message · arun

#
Hi,
You can use ?split()
?lst1<-split(DF,DF$ID)
lst1[1:2]
#$`1`
#? ID? drugs month
#1? 1 drug x???? 1
#4? 1 drug x???? 1
#5? 1 drug y???? 2
#6? 1 drug z???? 3
#
#$`2`
?# ID? drugs month
#2? 2 drug y???? 2
#7? 2 drug x???? 1

mean(sapply(lst1,nrow))
#[1] 2.4
#or
library(plyr)
?mean(ddply(DF,.(ID),nrow)[,2])
#[1] 2.4
#or
mean(with(DF,tapply(ID,ID,FUN=length)))
#[1] 2.4
A.K.