title: Creating a new dataframe from existing ones based on logical not
body: <p>I believe that my problem is really straightforward and there must be an really easy way to solve this issue, however as I am quite new with Python, I could not sort it out by my own an elegant solution. This question is very likely duplicated, however I could not find it, so please, if you have seen another question to my problem, take this as another way to elaborate on it.</p>
  
  <p>So, let's say I have the following dataframe:</p>
  
  <pre><code>import pandas as pd
  import matplotlib.pyplot as plt
  
  data = {'Column A': [300,300,450,500,500,750,600,300,800],
  'Column B': [1,1,2,2,3,3,0,2,3], 
  'Column C': ["Value_1", "Value_2", "Value_3", "Value_4", "Value_1", 
  "Value_2", "Value_3", "Value_4", "Value_5"]}
  df = pd.DataFrame(data, columns=['Column A','Column B', 'Column C'])
  </code></pre>
  
  <p>From there, I take two other dataframes:</p>
  
  <pre><code>df1 = df.loc[(df['Column C'] == "Value_4")]
  
  df2 = df.loc[(df['Column C'] == "Value_3")]
  </code></pre>
  
  <p>Now I want to create a third dataframe (df3) which is composed by the rows present in df (existing dataframe) that ARE NOT in df1 and df2. I don't want to extract or change anything on the existing dataframe (df).</p>
  
  <p>Hope that I managed to be succinct and precise. I would really appreciate your help on this one!</p>