Skip to content

Bulk Match/Replace

4 messages · Nathan S. Watson-Haigh, Phil Spector, Bill Venables

#
This must be easy to do.....

I have a vector and a lookup data.frame:

 > v
   [1] "5"   "234"   "234"   "42-43"   "234"   "42-43"   "234"   "234"   
"42-43"   "234"   "5"   "234"   "234"   "5"   "234"   "234"   "5"   
"234"   "234"
 > df
   id  Name
1         5 12-13
2         2   234
3         4 42-43
4         1     5

How can I simply substitute the values in vector v with the 
corresponding id value from lookup table df? I'd expect the following 
output:
 > v
   [1] "1"   "2"   "2"   "4"   "2"   "4"   "2"   "2"   "4"   "2"   "1"   
"2"   "2"   "1"   "2"   "2"   "1"   "2"   "2"

Cheers,
Nathan
#
Nathan -
    One way would be

         df$id[match(v,df$Name)]


 					- Phil Spector
 					 Statistical Computing Facility
 					 Department of Statistics
 					 UC Berkeley
 					 spector at stat.berkeley.edu
On Wed, 27 Jan 2010, Nathan S. Watson-Haigh wrote:

            
#
[1] 1 2 2 4 2 4 2 2 4 2 1 2 2 1 2 2 1 2 2
#
I knew it should be simple ..... but only if you know how!!

Thanks, works a treat!!
Nathan

--------------------------------------------------------
Dr. Nathan S. Watson-Haigh
OCE Post Doctoral Fellow
CSIRO Livestock Industries
University Drive
Townsville, QLD 4810
Australia

Tel: +61 (0)7 4753 8548
Fax: +61 (0)7 4753 8600
Web: http://www.csiro.au/people/Nathan.Watson-Haigh.html
--------------------------------------------------------
On 27/01/2010 11:03 AM, Phil Spector wrote: