tom wright wrote: > Can someone please explain why this works: > > >>>d<-c(0,2,3,2,0,3,4,0,0,0,0,0) >>>d.mat<-matrix(data=d,nrow=4,ncol=3,byrow=TRUE) >>>for(i in 1:length(d.mat[1,])){ >> >>+ d.mat[,i][d.mat[,i]==0]<-mean(d.mat[,i][d.mat[,i]>0]) >>+ } > > > Whereas: > > >>d<-c(0,2,3,2,0,3,4,0,0,0,0,0) >>d.mat<-matrix(data=d,nrow=4,ncol=3,byrow=TRUE) >>d.mat[d.mat==0]<-NA >>for(i in 1:length(d.mat[1,])){ > > + d.mat[,i][d.mat[,i]==NA]<-mean(d.mat[,i],na.rm=TRUE) > + } > dosnt > > Thanks > Tom >
d.mat[,i] == NA returns NA. You want ?is.na to test for missing values. --sundar ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html