That's it, thanks a lot to all of you! Uli
Henrique Dallazuanna schrieb: > In grep use: grep("x$", names(data)). > > '$' matchs 'x' in the end of string > > On Fri, Jan 15, 2010 at 11:14 AM, Uli Kleinwechter > <u.kleinwech...@uni-hohenheim.de> wrote: > >> Jim Lemon schrieb: >> >>> On 01/15/2010 07:10 PM, Uli Kleinwechter wrote: >>> >>>> Dear all, >>>> >>>> I'm looking for a way to replace NA's with 0 for a number of variables >>>> which share the same ending and which constitute a subset of a data >>>> frame. >>>> >>>> Say, for example, there is >>>> >>>> >>>>> data<- data.frame(ax=c(1,2,3,NA,0) , bx=c(3,5,NA,5,1) , >>>>> >>>> ay=c(5,NA,2,NA,0) , by=c(4,2,NA,2,1)) >>>> >>>>> data >>>>> >>>> ax bx ay by >>>> 1 1 3 5 4 >>>> 2 2 5 NA 2 >>>> 3 3 NA 2 NA >>>> 4 NA 5 NA 2 >>>> 5 0 1 0 1 >>>> >>>> I wish to apply something like // >>>> // >>>> /> data[is.na(data)]<- 0/ >>>> // >>>> but not to the entire data frame, rather only to the variables ending >>>> with x. >>>> >>>> >>> Hi Uli, >>> How about: >>> >>> data[,grep("x",names(data))][is.na(data[,grep("x",names(data))])]<-0 >>> >>> Jim >>> >>> >> Hi Jim, >> >> thanks a lot. I'm just afraid that grep matches any occurence of "x" in >> the variable name. So variables which would contain "x" at any position, >> not necessarily only at the last one would be selected, as well. To >> refine my example (sorry for having been so imprecise before...): >> >> >>> data<- data.frame(ax=c(1,2,3,NA,0) , bx=c(3,5,NA,5,1) >>> >> ,ay=c(5,NA,2,NA,0) , xy=c(4,2,NA,2,1)) >> >>> data >>> >> ax bx ay xy >> 1 1 3 5 4 >> 2 2 5 NA 2 >> 3 3 NA 2 NA >> 4 NA 5 NA 2 >> 5 0 1 0 1 >> >> The task, again, would be to replace NA's with 0 in "ax" and "bx", but >> not in "ay" and "xy" >> >> Best, >> >> Uli >> >> ______________________________________________ >> 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.