title: Find intersection of two sets of columns in python pandas dataframe for each row without looping
body: <p>I have a following <code>pandas.DataFrame</code>:</p>
  
  <pre><code>df = pd.DataFrame({'A1':['a','a','d'], 'A2':['b','c','c'], 
                     'B1':['d','a','c'], 'B2': ['e','d','e']})
    A1 A2 B1 B2
  0  a  b  d  e
  1  a  c  a  d
  2  d  c  c  e
  </code></pre>
  
  <p>I would like to choose the rows in which values in <code>A1</code> and <code>A2</code> are different from <code>B1</code> and <code>B2</code>, or intersection of values in <code>['A1', 'A2']</code> and <code>['B1', 'B2']</code> is empty, so in the above example only the row 0 should be chosen. </p>
  
  <p>So far the best I could do is to loop over every row of my data frame with the following code</p>
  
  <pre><code>for i in df.index.values:
     if df.loc[i,['A1','A2']].isin(df.loc[i,['B1','B2']]).sum()&gt;0:
         df = df.drop(i,0)
  </code></pre>
  
  <p>Is there a way to do this without looping?</p>