[R] text matching and substitution

Stephan Kolassa Stephan.Kolassa at gmx.de
Sat Mar 28 15:38:40 CET 2009


Hi Simeon,

I'm slightly unclear on what exactly you are trying to achieve... Are 
you trying to replace every entry of colours which *contains* "red" by 
"red", dropping the rest of the entry? And same with "blue"?

A short example "before & after" would be helpful...

Best,
Stephan


simeon duckworth schrieb:
> thanks stephan.  i'd been trying to make gsub work, but couldnt make it
> replace the whole expression.  so i'd resorted to trying to loop with grep -
> but with two problems.   firstly, i cant seem to make the loop 'remember'
> the substitutions it makes (see below).  secondly, it feels like this is a
> really inefficient way of doing something quite simple anyhow.
> 
> colours <- as.character(paste(letters,colours(),"stuff",LETTERS))
> target <- c("red","blue","green","gray")
> new.colour <-colours
> for (i in length(target)) {
>     x <- target[i]
>     new.colour[grep((x),new.colour)] <- x
>     return(new.colour)
>     }
> 
> 
> 
> 
> On Sat, Mar 28, 2009 at 9:45 AM, Stephan Kolassa <Stephan.Kolassa at gmx.de>wrote:
> 
>> Hi Simeon,
>>
>> ?gsub
>>
>> HTH,
>> Stephan
>>
>> simeon duckworth schrieb:
>>
>>> I am trying to simplify a text variable by matching and replacing it with
>>> a
>>> string in another vector
>>>
>>> so for example in
>>> colours <- paste(letters,colours(),"stuff",LETTERS)
>>>
>>> find and replace with ("red","blue","green","gray","yellow","other")  -
>>> irrespective of case
>>>
>>> its a large dataset, so i'd like to be able to do this as efficiently as
>>> possible.
>>>
>>> thanks for any help
>>>
>>>        [[alternative HTML version deleted]]
>>>
>>> ______________________________________________
>>> 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