2015-10-26 44 views
1

這是我第一次發佈堆棧溢出,所以請耐心等待。我一直在網上搜索整整一天,但我一直無法解決這個問題。使用熊貓方法to_sql時UnicodeEncodeError在具有unicode列名的數據框上

基本上,我在列名中有一個帶有unicode字符的Pandas DataFrame,當我嘗試使用to_sql將數據存儲在數據庫中時,出現UnicodeEncodeError。我可以重現錯誤與下面的代碼:

import pandas as pd 
from sqlalchemy import create_engine 

df = pd.DataFrame([[1,2],[3,4]], columns = [u'\xe9',u'b']) 
engine = create_engine('mysql://root:[email protected]/testdb') 
df.to_sql('data', engine, if_exists = 'replace', index = False) 

追溯的最後一行是這樣的:

C:\Users\isaac_000\Anaconda\lib\site-packages\pandas\io\sql.pyc in _get_column_names_and_types(self, dtype_mapper) 
857    dtype_mapper(self.frame.iloc[:, i]), 
858    False) 
--> 859    for i in range(len(self.frame.columns)) 
860    ] 
861 

UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 0: ordinal not in range(128) 

我希望得到任何幫助你們可以提供。讓我知道你是否需要更多信息。謝謝!

+0

哇,謝謝joris,這似乎已經解決了問題! – Isaac

回答

相關問題