0

I have two data frames result and annotation as follow;

result
ID   Score1   Score2   Score3
1       s11         s12       s13
3       s21         s22       s23
6       s31         s32       s33

annotation
ID   Ann1   Ann2   
1      a11      a12    
2      a21      a22    
3      a31      a32    
4      a41      a42    
5      a51      a52    
6      a61      a62    
7      a71      a72    


I want output as follow:
output
ID   Score1    Score2    Score3    Ann1    Ann2
1       s11         s12           s13         a11       a12
3       s21         s22           s23         a31       a32
6       s31         s32           s33         a61       a62

ID is common between two tables
Any help will be greatly appreciated.
Thanks

  • Do you need `merge(result, annotation)` ? Why `ID` 3 and 6 are selected in the output, shouldn't it be 2 and 3 instead? – Ronak Shah Jan 07 '20 at 02:38

1 Answers1

0

You can use a left_join() from dplyr:

> library(dplyr)
> left_join(result, annotation, by = "ID")
  ID Score1 Score2 Score3 Ann1 Ann2
1  1    s11    s12    s13  a11  a12
2  3    s21    s22    s23  a31  a32
3  6    s31    s32    s33  a61  a62
Paul
  • 2,877
  • 1
  • 12
  • 28