title: merge two pandas dataframes without duplicating items
body: <p>I have two dataframes</p>
  <pre><code>left = pd.DataFrame(
      {&quot;K&quot;: [&quot;K0&quot;, &quot;K0&quot;, &quot;K1&quot;, &quot;K2&quot;], &quot;A&quot;: [&quot;A0&quot;, &quot;A1&quot;, &quot;A2&quot;, &quot;A3&quot;], &quot;B&quot;: [&quot;B0&quot;, &quot;B1&quot;, &quot;B2&quot;, &quot;B3&quot;]}
  )
  
  right = pd.DataFrame(
      {&quot;K&quot;: [&quot;K0&quot;, &quot;K0&quot;, &quot;K0&quot;, &quot;K2&quot;], &quot;C&quot;: [&quot;C0&quot;, &quot;C1&quot;, &quot;C2&quot;, &quot;C3&quot;], &quot;D&quot;: [&quot;D0&quot;, &quot;D1&quot;, &quot;D2&quot;, &quot;D3&quot;]}
  )
  
      K   A   B
  0  K0  A0  B0
  1  K0  A1  B1
  2  K1  A2  B2
  3  K2  A3  B3
  
      K   C   D
  0  K0  C0  D0
  1  K0  C1  D1
  2  K0  C2  D2
  3  K2  C3  D3
  </code></pre>
  <p>I want to combine them into one dataframe, so that only the rows are considered where the key is present in both dataframes:</p>
  <pre><code>   K   A   B   C   D
  0  K0  A0  B0  C0  D0
  1  K0  A1  B1  C1  D1
  2  K2  A2  B2  C3  D3
  </code></pre>
  <p>If I use pandas.merge I always end up with duplicate rows. Is there a simple way to achieve this?</p>