[R] rep for multiple categories

BORGMANN,Kathi kborgmann at audubon.org
Mon Mar 28 20:43:12 CEST 2011


Hi,
I am R beginner and am trying to figure out how to generate a complete list of species for every point, visit, and year. The code below is close but does not give me a list of species for every point, visit, and year in my data set.

spplist<-unique(sumPtCt$Species)
spplength<-length(spplist)
Pointlist<-unique(sumPtCt$Point)
Pointlength<-length(Pointlist)
Visitlist<-unique(sumPtCt$Visit)
Visitlength<-length(Visitlist)
Yearlist<-unique(sumPtCt$Year)
Yearlength<-length(Yearlist)
s<-rep(spplist, each=Pointlength, Visitlength, Yearlength)
p<-rep(Pointlist, spplength)
v<-rep(Visitlist, spplength)
y<-rep(Yearlist, spplength)
template<-data.frame(Species=s,Point=p, Visit=v, Year=y)

###merge template and data and replace NAs with 0
FinalPtCt<-merge(template, sumPtCt, all=T)
FinalPtCt$Number[is.na(FinalPtCt$Number)]<-0


Essentially I have data that look like this
 SPP  Point  Visit  Number
BUFF   1      1       5
WEGR   1      1       10
CLGR   1      1       15
WEGU   2      1        5
RUDU   2      1       15
HOGR   2      1        5


But I want to generate this
Spp  Point              Visit                   Number
BUFF  1               1               5
WEGR  1               1               10
CLGR  1               1               15
WEGU  1               1               0
RUDU  1               1               0
HOGR  1               1               0
WEGU  2               1               5
RUDU  2               1               15
HOGR  2               1               5
BUFF  2               1               0
WEGR  2               1               0
CLGR  2               1               0



More information about the R-help mailing list