title: Pandas: Converting to numeric, creating NaNs when necessary
body: <p>Say I have a column in a dataframe that has some numbers and some non-numbers</p>
  
  <pre><code>&gt;&gt; df['foo']
  0       0.0
  1     103.8
  2     751.1
  3       0.0
  4       0.0
  5         -
  6         -
  7       0.0
  8         -
  9       0.0
  Name: foo, Length: 9, dtype: object
  </code></pre>
  
  <p>How can I convert this column to <code>np.float</code>, and have everything else that is not float convert it to <code>NaN</code>?</p>
  
  <p>When I try:</p>
  
  <pre><code>&gt;&gt; df['foo'].astype(np.float)
  </code></pre>
  
  <p>or</p>
  
  <pre><code>&gt;&gt; df['foo'].apply(np.float)
  </code></pre>
  
  <p>I get <code>ValueError: could not convert string to float: -</code></p>