静かなるブログ

音楽、Pythonなど

Python CSVの読み込みと日本語変換

日本語処理についての記事リンク

python2.xでの日本語(マルチバイト文字)問題を一掃する!(その1) — ExSoft

Python でUTF-8, shift_jis, euc_jpなど日本語を使う方法

http://www.kabipan.com/computer/python/unicode.html

 

 

 

ある統計データのCSVファイルをダウンロードしてPythonで読み込もうとしました。

単純に

import pandas as pd

df = pd.read_csv("ファイル名") 

print(df)

 

こんな感じ。

 

で帰ってきたエラーがこちら

 

Traceback (most recent call last):
File "/Users/makishi/Desktop/test_pandas.py", line 57, in <module>
t = pd.read_csv("ファイル名")
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/pandas/io/parsers.py", line 465, in parser_f
return _read(filepath_or_buffer, kwds)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/pandas/io/parsers.py", line 241, in _read
parser = TextFileReader(filepath_or_buffer, **kwds)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/pandas/io/parsers.py", line 557, in __init__
self._make_engine(self.engine)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/pandas/io/parsers.py", line 694, in _make_engine
self._engine = CParserWrapper(self.f, **self.options)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/pandas/io/parsers.py", line 1061, in __init__
self._reader = _parser.TextReader(src, **kwds)
File "pandas/parser.pyx", line 509, in pandas.parser.TextReader.__cinit__ (pandas/parser.c:4715)
File "pandas/parser.pyx", line 652, in pandas.parser.TextReader._get_header (pandas/parser.c:6441)

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x81 in position 0: invalid start byte

 

このbyte0x81はデコードできませんというのはどういうことでしょうか?

もちろん自己解決が一番ですが、わかる人がいれば教えていただけると助かります。

 

 追記: このブログでこの記事が二番目にgoogleからアクセスされるページになってます。

やはりそれほど同じエラーで困っている人が多い、ということでしょうか?

f:id:makishim1n:20151211222356p:plain