title: Deleting rows based on multiple conditions Python Pandas
body: <p>I want to delete rows when a few conditions are met:</p>
  
  <p>For instance, a random DataFrame is generated:</p>
  
  <pre><code>import pandas as pd
  import numpy as np
  df = pd.DataFrame(np.random.randn(10, 4), columns=['one', 'two', 'three', 'four'])
  print df
  </code></pre>
  
  <p>one instance of table is shown as below:</p>
  
  <pre><code>        one       two     three      four
  0 -0.225730 -1.376075  0.187749  0.763307
  1  0.031392  0.752496 -1.504769 -1.247581
  2 -0.442992 -0.323782 -0.710859 -0.502574
  3 -0.948055 -0.224910 -1.337001  3.328741
  4  1.879985 -0.968238  1.229118 -1.044477
  5  0.440025 -0.809856 -0.336522  0.787792
  6  1.499040  0.195022  0.387194  0.952725
  7 -0.923592 -1.394025 -0.623201 -0.738013
  8 -1.775043 -1.279997  0.194206 -1.176260
  9 -0.602815  1.183396 -2.712422 -0.377118
  </code></pre>
  
  <p>I want to delete rows based on the conditions that:</p>
  
  <p><em>Row with value of col 'one', 'two', <strong>or</strong> 'three' greater than 0; <strong>and</strong> value of col 'four' less than 0 should be deleted.</em> </p>
  
  <p>Then I tried to implement as follows:</p>
  
  <pre><code>df = df[df.one &gt; 0 or df.two &gt; 0 or df.three &gt; 0 and df.four &lt; 1]
  </code></pre>
  
  <p>However, resulting in a error message as follow:</p>
  
  <pre><code>ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
  </code></pre>
  
  <p>Could someone help me on how to delete based on multiple conditions?</p>