91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python數據讀取的常見錯誤

發布時間:2021-08-17 23:19:46 來源:億速云 閱讀:251 作者:chen 欄目:大數據

這篇文章主要講解了“Python數據讀取的常見錯誤”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Python數據讀取的常見錯誤”吧!

1、UnicodeDecodeError

Python數據讀取的常見錯誤

read_csv 默認讀入文件的編碼格式為:utf-8,如果讀入文件無法被utf-8編碼,就會報上面的錯誤。

可是我們怎么知道讀入文件的編碼格式呢?今天,為大家介紹一個這方面的包:chardet,它能返回文件的編碼格式。使用前先用pip install chardet,安裝一下。 接下里這樣編寫返回編碼格式,file為讀入的文件名稱。

# 獲取文件編碼類型def get_encoding(file):    # 二進制方式讀取,獲取字節數據,檢測類型    with open(file, 'rb') as f:        return chardet.detect(f.read())['encoding']

通過charadet包分析出文件的編碼格式后,不管使用 python原生的open, read,還是pandas的read_csv,都可以傳入給參數encoding.

2、 sep分隔符

常見文件的分隔符,比如 , \t, csv文件默認為逗號,不過常用的大數據庫,比如hive,有時會使用分隔符為\t,這時候就需要調整參數sep. 這類錯誤比較好解決。

3、讀取文件時遇到和列數不對應的行,此時會報錯

尤其在讀入文件為上億行的,快讀完時,突然報出這個錯,此行解析出的字段個數與之前行列數不匹配。

此時,需要調整一個參數:error_bad_lines為false,意思是忽略此行。

pandas.read_csv(***,error_bad_lines=False)

實際項目,讀入的文件數據環境比我們預想的復雜。假設我們的數據文件默認分隔符為逗號,然后如果某行的某個單元格取值為:

'山東省, 濰坊市, 青州市'

就光這一個單元格,就會解析出多列,報錯那也是自然的,這就要求我們在讀入之前對數據做好充分的清洗。

4、EOF inside string starting at line 錯誤

這個錯誤在讀入文件時,經常也會出現。這類錯誤需要修改 quoting參數。

df = pd.read_csv(csvfile, quoting=csv.QUOTE_NONE )

默認取值為0,遇到錯誤時,可以根據文檔調整。

quoting : int or csv.QUOTE_* instance, default 0Control field quoting behavior per csv.QUOTE_* constants. Use one of QUOTE_MINIMAL (0), QUOTE_ALL (1), QUOTE_NONNUMERIC (2) or QUOTE_NONE (3).

感謝各位的閱讀,以上就是“Python數據讀取的常見錯誤”的內容了,經過本文的學習后,相信大家對Python數據讀取的常見錯誤這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南漳县| 怀化市| 扬州市| 涿州市| 全南县| 洮南市| 桑日县| 巩留县| 鲁甸县| 弥渡县| 盐边县| 即墨市| 平泉县| 淳化县| 镇平县| 海安县| 丁青县| 吴江市| 崇信县| 土默特右旗| 宾川县| 涞水县| 漳平市| 泸州市| 衡阳市| 渝中区| 定边县| 加查县| 玉溪市| 万宁市| 泗洪县| 勃利县| 高平市| 清徐县| 翁牛特旗| 奈曼旗| 介休市| 麻栗坡县| 达州市| 霞浦县| 临泽县|