title: trouble with df.replace in pandas
body: <p>I have a set of about 30 columns that I want to convert to int. These columns get pulled in as string dtype but needs to be converted to int.</p>
  
  <p>When I do this</p>
  
  <pre><code>df = df[['columns','to','change']].astype(int)
  </code></pre>
  
  <p>I get</p>
  
  <pre><code>ValueError: invalid literal for long() with base 10: '\xe2\x80\xa0'
  </code></pre>
  
  <p>So I want to replace that string with None and then drop NA.  I am trying this.  </p>
  
  <pre><code>#there are some funky values in some columns that should have numbers.  Lets trash them
  starting_row_count = len(df.index)
  df.dropna()
  current_row_count = len(df.index)
  print current_row_count - starting_row_count
  
  def strip_it(value):
     #culls rotten values
      if type(value) == str:
          value.replace('\xe2\x80\xa0', None)
          value.replace('"', None)
          value.replace('=', None) 
      return value
  
  df = df.astype(str)
  
  df = df.apply(strip_it)
  
  df.dropna()
  current_row_count = len(df.index)
  print current_row_count - starting_row_count
  </code></pre>
  
  <p>Both print statements produce 0, showing no rows are removed.  </p>
  
  <p>I would hope this would remove those values from my DF but I am not sure what I am doing wrong?</p>