通過Pandas讀取大文件的實例
當(dāng)數(shù)據(jù)文件過大時,由于計算機(jī)內(nèi)存有限,需要對大文件進(jìn)行分塊讀?。?/strong>
import pandas as pd f = open('E:/學(xué)習(xí)相關(guān)/Python/數(shù)據(jù)樣例/用戶側(cè)數(shù)據(jù)/test數(shù)據(jù).csv') reader = pd.read_csv(f, sep=',', iterator=True) loop = True chunkSize = 100000 chunks = [] while loop: try: chunk = reader.get_chunk(chunkSize) chunks.append(chunk) except StopIteration: loop = False print("Iteration is stopped.") df = pd.concat(chunks, ignore_index=True) print(df)
read_csv()函數(shù)的iterator參數(shù)等于True時,表示返回一個TextParser以便逐塊讀取文件;
chunkSize表示文件塊的大小,用于迭代;
TextParser類的get_chunk方法用于讀取任意大小的文件塊;
StopIteration的異常表示在循環(huán)對象窮盡所有元素時報錯;
concat()函數(shù)用于將數(shù)據(jù)做軸向連接:
pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False, keys=None, levels=None, names=None, Verify_integrity=False)
常用參數(shù):
objs:Series,DataFrame或者是Panel構(gòu)成的序列l(wèi)ist;
axis:需要合并連接的軸,0是行,1是列;
join:連接的參數(shù),inner或outer;
ignore=True表示重建索引。
以上這篇通過Pandas讀取大文件的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python輕松辦公將100個Excel中符合條件的數(shù)據(jù)匯總到1個Excel里
這篇文章主要為大家介紹了python輕松辦公將100個Excel中符合條件的數(shù)據(jù)匯總到1個Excel里示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03python實現(xiàn)對csv文件的列的內(nèi)容讀取
今天小編就為大家分享一篇python實現(xiàn)對csv文件的列的內(nèi)容讀取,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07