PythonでCSVファイルを読み込む際、UnicodeDecodeError: 'utf-8' codec can't decode byte 0x90 in position 0: invalid start byte
というエラーが発生することがあります。このエラーは、ファイルがUTF-8ではなく別のエンコーディングで保存されている場合によく見られます。
エラーの原因
このエラーは、PythonがファイルをUTF-8として解釈しようとしたとき、無効な開始バイトを検出したことを示しています。具体的には、ファイルがUTF-8ではなく、Shift_JISやCP932などの別のエンコーディングで保存されている可能性があります。
解決策
この問題を解決するためには、pandas.read_csv()
関数のencoding
パラメータを適切な値に設定します。たとえば、ファイルがShift_JISでエンコードされている場合、次のようにします:
import pandas as pd
df = pd.read_csv('file/to/path', encoding='shift_jis')
このコードは、PythonにファイルをShift_JISとして解釈するよう指示します。
まとめ
Pythonでファイルを読み込む際にUnicodeDecodeError: 'utf-8' codec can't decode byte 0x90 in position 0: invalid start byte
エラーが発生した場合、ファイルがUTF-8ではなく別のエンコーディングで保存されている可能性があります。この問題を解決するためには、pandas.read_csv()
関数のencoding
パラメータを適切な値に設定します。