Closed
Description
The DataFrame.to_records
method fails with a UnicodeEncodeError
for some unicode column names.
(This issue is related to #680. The example below extends the example given in that issue.)
In [322]: df = pandas.DataFrame({u'c/\u03c3':[1,2,3]})
In [323]: df
Out[323]:
c/σ
0 1
1 2
2 3
In [324]: df.to_records()
---------------------------------------------------------------------------
UnicodeEncodeError Traceback (most recent call last)
<ipython-input-324-6d3142e97d2d> in <module>()
----> 1 df.to_records()
/redacted/python2.7/site-packages/pandas/core/frame.pyc in to_records(self, index, convert_datetime64)
1013 elif index_names[0] is None:
1014 index_names = ['index']
-> 1015 names = index_names + lmap(str, self.columns)
1016 else:
1017 arrays = [self[c].get_values() for c in self.columns]
UnicodeEncodeError: 'ascii' codec can't encode character u'\u03c3' in position 2: ordinal not in range(128)