title: Updating a dataframe 2 affects the dataframe 1 that was the origin of dataframe 2
body: <p>I am appending a reverse dataframe to its original dataframe. Seemed like it is all working but than I realized this: <code>df1</code>had the <code>ids</code> (1,1,1,2,2) at first. I applied the function <code>df2['id'] = df2['id'].apply(lambda x: x + id_amount)</code> to <code>df2</code> not to <code>df1</code> but anyways when i append <code>df2</code> to <code>df1</code> its <code>ids</code> changed too. How can that be? Why does <code>df1</code>take the <code>df2</code>values of the id column</p>
  
  <pre><code>import pandas as pd
  df1 = pd.DataFrame({'x':[1,1,2,9,9], 'y':[1,2,2,100,101],'id':[1,1,1,2,2]})
  df2= df1[::-1]   #df2 as reverse of df1
  print(df1)
  id_amount=df2['id'].nunique()
  df2['id'] = df2['id'].apply(lambda x: x + id_amount) 
  df2=df2.sort_values(by=['id'])
  df1=df1.append(df2)
  df1 = df1.reset_index(drop=True)
  print(df1)
  </code></pre>
  
  <p>Here df1 before and after:</p>
  
  <pre><code>#before
  x   y   id 
  1   1    1     
  1   2    1     
  2   2    1     
  9  100   2     
  9  101   2     
  </code></pre>
  
  <p>becomes:</p>
  
  <pre><code>#after
  x   y     id 
  1   1      3     
  1   2      3     
  2   2      3     
  9  100     4     
  9  101     4     
  2   2      3     
  1   2      3     
  1   1      3     
  9  101     4     
  9  100     4
  </code></pre>
  
  <p>should become:   </p>
  
  <pre><code>x   y     id 
  1   1      1     
  1   2      1     
  2   2      1     
  9  100     2     
  9  101     2     
  2   2      3     
  1   2      3     
  1   1      3     
  9  101     4     
  9  100     4  
  </code></pre>