title: Pandas: dropping all columns with nans, 0, and NA from DataFrame
body: <p>I have a DataFrame that looks like this:</p>
  
  <pre><code>import pandas as pd
  import numpy as np
  
  df = pd.DataFrame({'A': [1, 2.1, np.nan, 4.7, 5.6, 6.8],
                  'B': [0, np.nan, np.nan, 0, 0, 0],
                  'C': [0, 0, 0, 0, 0, 0.0],
                  'D': [5, 5, 5, 5, 5.6, 6.8],
                  'E': ['NA', 'NA', 'NA', 'NA', 'NA', 'NA'],})
  </code></pre>
  
  <p>How would I drop all the <code>NA</code>, <code>Nans</code> and <code>0</code> in the columns so I would get the following output?</p>
  
  <pre><code>df2 = pd.DataFrame({'A': [1, 2.1, np.nan, 4.7, 5.6, 6.8],
                  'D': [5, 5, 5, 5, 5.6, 6.8],})
  </code></pre>
  
  <p>So far I know <code>.dropna()</code> will get rid of all the <code>nan</code> also I tried <code>df2=df[~(df==0).all(axis=1)]</code> and it did not work.</p>