pandas讀取csv格式數(shù)據(jù)時(shí)header參數(shù)設(shè)置方法
寫在前面
使用pandas中read_csv讀取csv數(shù)據(jù)時(shí),對(duì)于有表頭的數(shù)據(jù),將header設(shè)置為空(None),會(huì)報(bào)錯(cuò):pandas_libs\parsers.pyx in pandas._libs.parsers.raise_parser_error() ParserError: Error tokenizing data. C error: Expected 4 fields in line 2, saw 5 。
查看pandas官方文檔發(fā)現(xiàn),read_csv讀取時(shí)會(huì)自動(dòng)識(shí)別表頭,數(shù)據(jù)有表頭時(shí)不能設(shè)置header為空(默認(rèn)讀取第一行,即header=0);數(shù)據(jù)無表頭時(shí),若不設(shè)置header,第一行數(shù)據(jù)會(huì)被視為表頭,應(yīng)傳入names參數(shù)設(shè)置表頭名稱或設(shè)置header=None。
參考文檔
這是pandas的read_csv的官方文檔: python - pandas.read_csv
read_csv的header參數(shù)
使用pandas的read_csv讀取數(shù)據(jù)時(shí),header參數(shù)表頭名稱設(shè)置(即各列數(shù)據(jù)對(duì)應(yīng)名稱),下面是文檔中對(duì)header參數(shù)的說明:

其中指出,表頭可根據(jù)數(shù)據(jù)格式推斷各列名稱:默認(rèn)情況下,
- 若未傳入
names參數(shù),則根據(jù)輸入文件的第一行推斷是否有表頭; - 若傳入
names參數(shù),則names傳入的參數(shù)作為表頭(原數(shù)據(jù)有表頭則會(huì)替換原有表頭)。
下面是對(duì)read_csv的header參數(shù)測(cè)試
header參數(shù)測(cè)試
測(cè)試數(shù)據(jù) 兩個(gè)csv(用逗號(hào)隔開)格式的文件,這里是用Excel打開,分別是帶有表頭和不帶表頭的數(shù)據(jù):


默認(rèn)header 下面是header默認(rèn)情況下,對(duì)有表頭的數(shù)據(jù)識(shí)別第一行作為header(即header=0)[ 數(shù)據(jù)沒有給出index名稱,這里設(shè)置 index_col=False,不設(shè)置默認(rèn)第一列為index(而表頭仍是4列,最后一列數(shù)據(jù)為NaN), index_col參數(shù)與 header類似可自動(dòng)識(shí)別。

設(shè)置header=None 對(duì)有表頭的數(shù)據(jù)設(shè)置 header=None則會(huì)報(bào)錯(cuò):


對(duì)無表頭的數(shù)據(jù),則需設(shè)置 header=None,否則第一行數(shù)據(jù)被作為表頭:

思考
pandas是如何識(shí)別或區(qū)分?jǐn)?shù)據(jù)和表頭名稱的 ?
- 對(duì)于
index_col來說,若數(shù)據(jù)都是相同類型,比如數(shù)值型,則表示無index,輸出默認(rèn)index為0,1,2,…;若數(shù)據(jù)第一列為字符,其他列為數(shù)值,則會(huì)將第一列視為index;若設(shè)置index_col=False, 則表示無index(默認(rèn)將0, 1, 2,…作為數(shù)據(jù)的index) - 對(duì)
header,當(dāng)?shù)谝恍袨樽址?,則第一行默認(rèn)為表頭;當(dāng)?shù)谝恍信c其他數(shù)據(jù)類型相同時(shí),也會(huì)把第一行當(dāng)作表頭,所以無表頭時(shí)應(yīng)設(shè)置header=None
header傳入list參數(shù)(元素代表取對(duì)應(yīng)行號(hào))怎么用?
read_csv的參數(shù)skip_blank_lines=True會(huì)忽略注釋行和空行,其中注釋行是用什么符號(hào)注釋的?(試了一下,行首用’#'注釋的不對(duì))
到此這篇關(guān)于pandas讀取csv格式數(shù)據(jù)時(shí)header參數(shù)設(shè)置方法的文章就介紹到這了,更多相關(guān)pandas header參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- pandas讀取CSV文件時(shí)查看修改各列的數(shù)據(jù)類型格式
- Pandas讀取行列數(shù)據(jù)最全方法
- python?pandas庫(kù)讀取excel/csv中指定行或列數(shù)據(jù)
- python3 pandas 讀取MySQL數(shù)據(jù)和插入的實(shí)例
- 使用python的pandas讀取excel文件中的數(shù)據(jù)詳情
- 利用Pandas讀取表格行數(shù)據(jù)判斷是否相同的方法
- Python數(shù)據(jù)分析之pandas讀取數(shù)據(jù)
- Python如何利用pandas讀取csv數(shù)據(jù)并繪圖
- Python 中pandas索引切片讀取數(shù)據(jù)缺失數(shù)據(jù)處理問題
- Pandas讀取外部數(shù)據(jù)的幾種實(shí)現(xiàn)方法
相關(guān)文章
Python自動(dòng)發(fā)送郵件的方法實(shí)例總結(jié)
這篇文章主要介紹了Python自動(dòng)發(fā)送郵件的方法,結(jié)合實(shí)例形式總結(jié)分析了Python使用smtplib和email模塊發(fā)送郵件的相關(guān)使用技巧與操作注意事項(xiàng),需要的朋友可以參考下2018-12-12
python連接mongodb操作數(shù)據(jù)示例(mongodb數(shù)據(jù)庫(kù)配置類)
這篇文章主要介紹了python連接mongodb操作數(shù)據(jù)示例,主要包括插入數(shù)據(jù)、更新數(shù)據(jù)、查詢數(shù)據(jù)、刪除數(shù)據(jù)等2013-12-12
Python處理浮點(diǎn)數(shù)的實(shí)用技巧分享
四舍五入是一種常見的數(shù)學(xué)操作,它用于將數(shù)字舍入到指定的精度,Python?提供了多種方法來實(shí)現(xiàn)四舍五入操作,本文將詳細(xì)介紹這些方法,希望對(duì)大家有所幫助2024-12-12
python中Matplotlib繪制直線的實(shí)例代碼
在本篇文章里小編給大家整理的是一篇關(guān)于python中Matplotlib繪制直線的實(shí)例代碼內(nèi)容,有興趣的朋友們可以跟著學(xué)習(xí)下。2021-07-07
openCV入門學(xué)習(xí)基礎(chǔ)教程第三篇
pencv是用于快速處理圖像處理、計(jì)算機(jī)視覺問題的工具,支持多種語言進(jìn)行開發(fā)如c++、python、java等,下面這篇文章主要給大家介紹了關(guān)于openCV入門學(xué)習(xí)基礎(chǔ)教程的相關(guān)資料,需要的朋友可以參考下2022-11-11
Python中常用的GUI(圖形用戶界面)庫(kù)用法詳細(xì)介紹
GUI圖形用戶界面是一種允許用戶通過圖形元素(如圖標(biāo)、按鈕、窗口等)與電子設(shè)備進(jìn)行交互的用戶界面,下面這篇文章主要給大家介紹了關(guān)于Python中常用的GUI(圖形用戶界面)庫(kù)用法的相關(guān)資料,需要的朋友可以參考下2024-08-08

