天天看點

Python的Pandas讀取csv檔案報錯:UnicodeDecodeError: 'utf-8'

作者:小小程式設計書童

1.前言

讀取代碼如下所示。我們今天給大家分享,Python當中用pandas讀取csv或者excel檔案錯誤,UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb9 in position 0: invalid start byte。

import pandas as pd
  data = pd.read_csv("./2000.csv")           

2.原因分析

報錯截圖如下:

Python的Pandas讀取csv檔案報錯:UnicodeDecodeError: 'utf-8'

報錯提示在讀取這一行出錯,錯誤的原因呢就是這樣的,如下所示。

Python的Pandas讀取csv檔案報錯:UnicodeDecodeError: 'utf-8'

報錯提示:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb9 in position 0: invalid start byte ,對應的中文意思就是“utf-8”編解碼器無法解碼位置0中的位元組0xb9:起始位元組無效,意思就是utf-8編碼方式不能解碼你要讀取的檔案 ,也就是csv的編碼格式不對,需要進行更改。

3.解決方案

打開對應的csv檔案即2000.csv,在excel中檔案另存為,有一種格式是csv,還有一種格式是utf-8的csv,選擇UTF-8編碼的csv檔案,

Python的Pandas讀取csv檔案報錯:UnicodeDecodeError: 'utf-8'

如上所述,最後重新讀取檔案,儲存結束之後,再重新去讀取檔案,那同樣的代碼,現在下面就已經讀取出來,結果就不會報錯了,成功如下所示。

Python的Pandas讀取csv檔案報錯:UnicodeDecodeError: 'utf-8'