title: Pandas: select string with unicode characters
body: <p>I am trying to select rows by specifying the value of one of the columns. That works perfectly well, as long as the value selected is pure ascii. If however, it contains non-ascii characters, I cannot get it to work no matter how I encode the value.</p>
  
  <p>Simplified example to illustrate the problem:</p>
  
  <pre><code>&gt;&gt;&gt; from __future__ import (absolute_import, division, 
                              print_function, unicode_literals)
  &gt;&gt;&gt; import pandas as pd
  &gt;&gt;&gt; df = pd.DataFrame([[1, 'Stuttgart'], [2, 'München']], columns=['id', 'city'])
  &gt;&gt;&gt; df['city'] = df['city'].map(lambda x: x.encode('latin-1'))
  &gt;&gt;&gt; store = pd.HDFStore('test_store.h5')
  &gt;&gt;&gt; store.append('test_key', df, data_columns=True)
  &gt;&gt;&gt; store['test_key']
     id       city
  0   1  Stuttgart
  1   2    M�nchen
  </code></pre>
  
  <p>Note that the non-asci string is indeed properly stored:</p>
  
  <pre><code>&gt;&gt;&gt; store['test_key']['city'][1]
  'M\xfcnchen'
  </code></pre>
  
  <p>Selecting for asci value works just fine:</p>
  
  <pre><code>&gt;&gt;&gt; store.select('test_key', where='city==%r' % 'Stuttgart')
     id       city
  0   1  Stuttgart
  </code></pre>
  
  <p>But selecting for the non-ascii value fails to return the row:</p>
  
  <pre><code>&gt;&gt;&gt; store.select('test_key', where='city==%r' % 'München')
  Empty DataFrame
  Columns: [id, city]
  Index: []
  
  &gt;&gt;&gt; store.select('test_key', where='city==%r' % 'München'.encode('latin-1'))
  Empty DataFrame
  Columns: [id, city]
  Index: []
  </code></pre>
  
  <p>Clearly I am doing something wrong... How does one solve this issue?</p>