title: Merge (join) data frames - too many rows in result
body: <p>I have two data frames(df1 and df2). I want to join them using merge function. </p>
  
  <p>df1 has 3903 rows and df2 has 351 rows.</p>
  
  <p>I want to left join df2 to df1 by a common column(column1). I am using merge function.</p>
  
  <p>My code is like below:</p>
  
  <pre><code>dfjoin&lt;-merge(df1,df2, by="column1",all.x=TRUE)
  </code></pre>
  
  <p>So I expect dfjoin has 3903 rows equal to rows of df1. However it returns 4010 rows. </p>
  
  <p>Why does it return more rows than expected. I will be very glad for any help. Thanks a lot.</p>