title: Merge data.frames with duplicates
body: <p>I have many data.frames, for example:</p>
  
  <pre><code>df1 = data.frame(names=c('a','b','c','c','d'),data1=c(1,2,3,4,5))
  df2 = data.frame(names=c('a','e','e','c','c','d'),data2=c(1,2,3,4,5,6))
  df3 = data.frame(names=c('c','e'),data3=c(1,2))
  </code></pre>
  
  <p>and I need to merge these data.frames, without delete the name duplicates</p>
  
  <pre><code>&gt; result
    names data1 data2 data3
  1  'a'    1    1      NA
  2  'b'    2    NA     NA
  3  'c'    3    4      1
  4  'c'    4    5      NA
  5  'd'    5    6      NA
  6  'e'    NA   2      2       
  7  'e'    NA   3      NA
  </code></pre>
  
  <p>I cant find function like merge with option to handle with  name duplicates. Thank you for your help.
   To define my problem. The data comes from biological experiment where one sample have a different number of replicates. I need to merge all experiment, and I need to produce this table. I can't generate unique identifier for replicates.  </p>