中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

python編碼格式導致csv讀取錯誤怎么解決

發布時間:2022-05-10 14:27:15 來源:億速云 閱讀:293 作者:iii 欄目:開發技術

這篇文章主要講解了“python編碼格式導致csv讀取錯誤怎么解決”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“python編碼格式導致csv讀取錯誤怎么解決”吧!

python編碼格式導致csv讀取錯誤

本文記錄python小白我今天遇到的這兩個問題(csv.reader和pandas.csv_read):

pandas模塊“CParserError: Error tokenizing data. C error: Expected 1 fields in line 4, saw 2”錯誤

csv模塊“line contains NULL byte”錯誤

今天處理數據時疏忽了,而且還偷懶把數據復制到xlsx保存后,直接修改文件后綴成.csv準備用來讀取。之后運行算法要讀數據的時候果然問題來了。

import pandas as pd
path = 'water30.csv'
df=pd.read_csv(path)

注:后兩行可寫作df=pd.read_csv('water30.csv')。

但由于read_csv本身有好多參數(雖然這里不用), 故寫成path習慣好些。

這樣會報錯CParserError: Error tokenizing data. C error: Expected 1 fields in line 4, saw 2

我在網上查了好多種解決辦法,由于read_csv的參數很多,所以各有其詞,我這里遇到的應該也只是其中一種,久尋無果。直到我看到這里說看了模塊_csv.c的代碼后,發現文件里不能有 “\0”, 所以csv文件不可以是unicode編碼的,可以是ANSI。

針對我直接改后綴名的結果是,點擊那個.csv打開時就已經提示我:


python編碼格式導致csv讀取錯誤怎么解決

也就是這里改后綴并沒有把文件格式弄好。所以我選擇“另存為”改選了文件格式為

python編碼格式導致csv讀取錯誤怎么解決

之后,讀取就不會報錯了。

注:有個疑問沒有解決,就是那個我“直接改后綴得到的那個.csv”我用記事本打開查看了一下,編碼就是ANSI啊。那我就不知道為什么報錯了……不過問題倒是暫時解決了。

現在讀取到的格式為

python編碼格式導致csv讀取錯誤怎么解決

是個結構體。

另外,對于:csv模塊“line contains NULL byte”錯誤。和上面出現問題原因和解決方案是一樣的,比如

import csv
csvfile=file('water30.csv','rb')
reader = csv.reader(csvfile)
for line in reader:
     print line
csvfile.close()

報錯:Error: line contains NULL byte

修正后,讀入的數據格式為list,如下

[‘1’, ‘2’, ‘2’, ‘1’, ‘2’]
[‘1’, ‘1’, ‘1’, ‘2’, ‘2’]
[‘1’, ‘2’, ‘1’, ‘1’, ‘1’]
[‘1’, ‘1’, ‘1’, ‘1’, ‘2’]
[‘1’, ‘1’, ‘1’, ‘2’, ‘2’]
[‘1’, ‘1’, ‘1’, ‘2’, ‘2’]
[‘0.697’, ‘0.744’, ‘0.634’, ‘0.403’, ‘0.481’]
[‘0.46’, ‘0.376’, ‘0.264’, ‘0.237’, ‘0.149’]
[‘1’, ‘1’, ‘1’, ‘1’, ‘1’]

pandas讀取csv常見錯誤及解決

1)第一種錯誤

錯誤提示:

pandas.errors.ParserError: Error tokenizing data. C error: Expected 1 fields in line 121, saw 2

解決方法:

import pandas as pd
data = pd.read_csv(inputfile, encoding='utf-8',header=None,sep = '\t')

2)第二種錯誤

錯誤提示:

pandas.errors.ParserError: Error tokenizing data. C error: EOF inside string starting at line 15945

解決方法:

import pandas as pd
import csv
df = pd.read_csv(csvfile, quoting=csv.QUOTE_NONE, encoding='utf-8')

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

向AI問一下細節

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

AI

明水县| 弋阳县| 辽源市| 上虞市| 乾安县| 徐水县| 措美县| 德庆县| 东丽区| 马尔康县| 建宁县| 台中市| 忻城县| 永康市| 广河县| 禄劝| 武安市| 汶上县| 德保县| 丰原市| 五峰| 阳泉市| 稷山县| 盐池县| 志丹县| 通道| 青神县| 日照市| 大宁县| 临夏市| 九江县| 和平区| 大渡口区| 新田县| 涿州市| 白水县| 饶阳县| 华蓥市| 湖州市| 沙坪坝区| 清苑县|