Pandas數(shù)據(jù)集的分塊讀取的實(shí)現(xiàn)
所謂“分塊”,顧名思義,就是將數(shù)據(jù)集分成幾塊進(jìn)行讀取,比如有105條數(shù)據(jù),一次讀取10條,讀取11次才能全部讀完。以下提供兩種分塊讀取的方法,兩種方法各有優(yōu)劣。
一、直接用分塊方式讀取數(shù)據(jù)集文件(更直接)
分塊讀取數(shù)據(jù)集文件是指用read_xxx()方法讀取存儲(chǔ)數(shù)據(jù)的文件時(shí)采用分塊的方式,這里以.csv文件為例,在read_csv()中加入chunksize參數(shù)即可實(shí)現(xiàn)分塊讀?。?/p>
reader = pd.read_csv('某招聘網(wǎng)站數(shù)據(jù).csv', usecols = ['positionId', 'companyId', 'positionName', 'skillLables'], chunksize=10)
此時(shí),返回的reader不是DataFrame,而是一個(gè)可迭代對(duì)象(iteration),需要注意的是,這個(gè)可迭代對(duì)象不能用下標(biāo)訪問(wèn)。 下面遍歷這個(gè)對(duì)象:
for r in reader: print(r)
遍歷結(jié)果如下圖所示:
這種分塊讀取方式比較直接,但是由于一開始就定義了分塊大小,后續(xù)處理起來(lái)不夠靈活。因此提供了第二種讀取方法。
二、先將數(shù)據(jù)集讀取為可迭代對(duì)象,再分塊讀?。ǜ`活)
這種方法將數(shù)據(jù)集文件讀取為時(shí)可迭代對(duì)象不定義分塊,用分塊的方式讀取read_csv()方法返回的可迭代對(duì)象。實(shí)現(xiàn)第一步要在read_csv()方法中指定參數(shù)iterator為True:
reader = pd.read_csv('某招聘網(wǎng)站數(shù)據(jù).csv', usecols = ['positionId', 'companyId', 'positionName'], iterator=True)
以下是用分塊方式遍歷reader,注意使用到的get_chunk()方法和里面的參數(shù),參數(shù)定義分塊大小,可以靈活調(diào)節(jié):
while True: try: print(reader.get_chunk(10)) except StopIteration: break
總結(jié)
綜上所述,兩種方法都能用pandas實(shí)現(xiàn)數(shù)據(jù)的分塊讀取,對(duì)于數(shù)據(jù)量較大的數(shù)據(jù)集還是比較實(shí)用的。兩種方法的優(yōu)劣體現(xiàn)在直接性和靈活性上,可以根據(jù)實(shí)際需求自行選擇。
到此這篇關(guān)于Pandas數(shù)據(jù)集的分塊讀取的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Pandas數(shù)據(jù)集分塊讀取內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python利用sched模塊實(shí)現(xiàn)定時(shí)任務(wù)
今天我們來(lái)介紹一下Python當(dāng)中的定時(shí)任務(wù),主要用到的模塊是sched,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-04-04Python調(diào)用PC攝像頭實(shí)現(xiàn)掃描二維碼
PC攝像機(jī)掃描二維碼的應(yīng)用場(chǎng)景很廣泛,可以應(yīng)用于各種需要快速掃描、識(shí)別和管理的場(chǎng)景,本文就來(lái)具體講講如何用Python實(shí)現(xiàn)這一功能吧2023-05-05使用python編寫腳本獲取手機(jī)當(dāng)前應(yīng)用apk的信息
使用aapt工具獲取apk的信息,保存至腳本所在目錄下的PackageInfo.txt文件中,需要的朋友可以參考下2014-07-07Python3 + Appium + 安卓模擬器實(shí)現(xiàn)APP自動(dòng)化測(cè)試并生成測(cè)試報(bào)告
這篇文章主要介紹了Python3 + Appium + 安卓模擬器實(shí)現(xiàn)APP自動(dòng)化測(cè)試并生成測(cè)試報(bào)告,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01pytest生成簡(jiǎn)單自定義測(cè)試結(jié)果的html報(bào)告
這篇文章主要為大家介紹了pytest生成簡(jiǎn)單自定義測(cè)試結(jié)果html報(bào)告,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06在win和Linux系統(tǒng)中python命令行運(yùn)行的不同
本文給大家分享的是作者在在win和Linux系統(tǒng)中python命令行運(yùn)行的不同的解決方法,有相同需求的小伙伴可以參考下2016-07-07在pycharm中為項(xiàng)目導(dǎo)入anacodna環(huán)境的操作方法
這篇文章主要介紹了在pycharm中為項(xiàng)目導(dǎo)入anacodna環(huán)境的操作方法,本文圖文并茂通過(guò)實(shí)例詳解的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-02-02python實(shí)現(xiàn)最大子序和(分治+動(dòng)態(tài)規(guī)劃)
這篇文章主要介紹了python實(shí)現(xiàn)最大子序和(分治+動(dòng)態(tài)規(guī)劃),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07