使用Pandas怎么讀取excel?相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),裕華企業(yè)網(wǎng)站建設(shè),裕華品牌網(wǎng)站建設(shè),網(wǎng)站定制,裕華網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,裕華網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。首先可以先創(chuàng)建一個(gè)excel文件當(dāng)作實(shí)驗(yàn)數(shù)據(jù),名稱為example.xlsx,內(nèi)容如下:
name | age | gender |
---|---|---|
John | 30 | male |
Mary | 22 | female |
Smith | 32 | male |
這里是很簡單的幾行數(shù)據(jù),我們來用pandas實(shí)際操作一下這個(gè)excel表。
# coding:utf-8 import pandas as pd data = pd.read_excel('example.xlsx', sheet_name='Sheet1') print data
結(jié)果如下:
這里使用了read_excel()方法來讀取excel,來看一個(gè)read_excel()這個(gè)方法的API,這里只截選一部分經(jīng)常使用的參數(shù):
pd.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, usecols=None)
這里主要參數(shù)為io,sheet_name,header,usecols和names
io:excel文件,如果命名為中文,在python2.7中,需要使用decode()來解碼成unicode字符串,例如: pd.read_excel('示例'.decode('utf-8))
sheet_name:返回指定的sheet,如果將sheet_name指定為None,則返回全表,如果需要返回多個(gè)表,可以將sheet_name指定為一個(gè)列表,例如['sheet1', 'sheet2']
header:指定數(shù)據(jù)表的表頭,默認(rèn)值為0,即將第一行作為表頭。
usecols:讀取指定的列,例如想要讀取第一列和第二列數(shù)據(jù):
pd.read_excel("example.xlsx", sheet_name=None, usecols=[0, 1])
這里先來一個(gè)在機(jī)器學(xué)習(xí)中經(jīng)常使用的:將所有g(shù)ender為male的值改為0,female改為1。
# coding:utf-8 import pandas as pd from pandas import DataFrame # 讀取文件 data = pd.read_excel("example.xlsx", sheet_name="Sheet1") # 找到gender這一列,再在這一列中進(jìn)行比較 data['gender'][data['gender'] == 'male'] = 0 data['gender'][data['gender'] == 'female'] = 1 print data
結(jié)果如下:
需要注意的是,這里的data為excel數(shù)據(jù)的一份拷貝,對(duì)data進(jìn)行修改并不會(huì)直接影響到我們?cè)瓉淼膃xcel,必須在修改后保存才能夠修改excel。保存的代碼如下:
DataFrame(data).to_excel('example.xlsx', sheet_name='Sheet1', index=False, header=True)
這時(shí)候我們?cè)俅蜷_example.xlsx文件看看是否更改了:
如果我們想要新增加一列或者一行數(shù)據(jù)怎么辦呢?這里給出參考:
新增列數(shù)據(jù):
data['列名稱'] = None
新增行數(shù)據(jù),這里行的num為excel中自動(dòng)給行加的id數(shù)值
data.loc[行的num] = [值1, 值2, ...]
以上面的數(shù)據(jù)為例:
# coding:utf-8 import pandas as pd from pandas import DataFrame data = pd.read_excel("example.xlsx", sheet_name='Sheet1') # 增加行數(shù)據(jù),在第5行新增 data.loc[5] = ['James', 32, 'male'] # 增加列數(shù)據(jù),給定默認(rèn)值None data['profession'] = None # 保存數(shù)據(jù) DataFrame(data).to_excel('example.xlsx', sheet_name='Sheet1', index=False, header=True)
打開excel看到的結(jié)果如下:
說完了增加一行或一列,那怎樣刪除一行或一列呢?
import pandas as pd from pandas import DataFrame data = pd.read_excel("example.xlsx", sheet_name='Sheet1') # 刪除gender列,需要指定axis為1,當(dāng)刪除行時(shí),axis為0 data = data.drop('gender', axis=1) # 刪除第3,4行,這里下表以0開始,并且標(biāo)題行不算在類 data = data.drop([2, 3], axis=0) # 保存 DataFrame(data).to_excel('example.xlsx', sheet_name='Sheet1', index=False, header=True)
這時(shí)候打開excel可以看見gender列和除標(biāo)題行的第3,4行被刪除了。
看完上述內(nèi)容,你們掌握使用Pandas怎么讀取excel的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
新聞名稱:使用Pandas怎么讀取excel-創(chuàng)新互聯(lián)
本文地址:http://www.rwnh.cn/article40/dcppeo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、小程序開發(fā)、企業(yè)建站、網(wǎng)站導(dǎo)航、ChatGPT、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容