title: How to Convert Panda Strings Containing " $ - , " Characters to Float
body: <p>I have a <code>df</code> where some object columns contain <code>$</code>, <code>,</code>, negative numbers and <code>.</code>:</p>
  
  <pre><code>      Date Person      Salary      Change
  0  11/1/15   Mike    $100.52        ($20)
  1  11/1/15   Bill    $300.11    ($300.22)
  2  11/1/15   Jake           -    ($1,100)
  3  11/1/15   Jack    $411.43        $500 
  4  11/1/15   Faye         NaN  $1,000.12 
  5  11/1/15   Clay    $122.00        $100 
  6  11/1/15   Dick  $1,663.33            -
  </code></pre>
  
  <p>I want to convert them to <code>float</code>, but when I try:</p>
  
  <pre><code>df['Salary'] = df['Salary'].str.replace(',', '').str.replace('$', '').str.replace('-', '').astype(float)
  </code></pre>
  
  <p>I get an empty <code>ValueError: could not convert string to float:</code>. It seems like it's the <code>-</code> is causing some issues, so is there an elegant way of handling it? </p>