[R] Replacing NAs with 0 for variables with the same ending
Uli Kleinwechter
u.kleinwechter at uni-hohenheim.de
Fri Jan 15 14:36:10 CET 2010
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.kleinwechter at 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 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