私はしばらくの間、PythonでUnicodeEncodeError
と立ち往生しています。Python MySQLのエンコンディングエラー
- を、私は様々な分析の結果、データフレームを作成します。ここでは
は私がやっているものです。合計で、データフレームには複数のタイプの値(
int
,string
,datetime
など)を持つ30個の列があります。 - MySQLをインストールしたAzureのリモートインスタンスへのSSH接続を作成します。
SQLAlchemy
を使用して接続を作成します。 - 私は
df.to_sql
コマンドを実行すると、次のエラーに
UnicodeEncodeError: 'latin-1' codec can't encode character u'\u2013' in position 8: ordinal not in range(256)
を取得し、私はこれをやってみましたが、動作していないようでした。
engine = create_engine('mysql+pymysql://user:[email protected]:%s/db?charset=utf8' % server.local_bind_port)
私はu.encode('latin-1', 'replace')
を使用することができhere読みました。しかし、私はそれを実行し、すべてのString
列を通過し、それをエンコードする必要がありますか?それとも私は何かできることがありますか?
ご協力いただきありがとうございます。
使用しているPythonのバージョンは? – pshep123
@ pshep123 - Azureでは、私はPython 2.7.12を使用しています - 私のローカルPCで2.7.13 Anaconda 4.4.0 –
ありがとう。残念ながら、私はあなたを助けることはできませんが、私は自分自身と私の最近の研究を通して、Python 3とPython 2がテキストの書式設定を異なる方法で処理することに気づきました。私はどのバージョンを知っているよりも知識があります。その間にいくつかの読書があります:https://docs.python.org/2/howto/unicode.html、役に立つかもしれません。 – pshep123