網站首頁 編程語言 正文
所謂“分塊”,顧名思義,就是將數據集分成幾塊進行讀取,比如有105條數據,一次讀取10條,讀取11次才能全部讀完。以下提供兩種分塊讀取的方法,兩種方法各有優劣。
一、直接用分塊方式讀取數據集文件(更直接)
分塊讀取數據集文件是指用read_xxx()方法讀取存儲數據的文件時采用分塊的方式,這里以.csv文件為例,在read_csv()中加入chunksize參數即可實現分塊讀取:
reader = pd.read_csv('某招聘網站數據.csv', usecols = ['positionId', 'companyId', 'positionName', 'skillLables'],
chunksize=10)
此時,返回的reader不是DataFrame,而是一個可迭代對象(iteration),需要注意的是,這個可迭代對象不能用下標訪問。?下面遍歷這個對象:
for r in reader:
print(r)
遍歷結果如下圖所示:
這種分塊讀取方式比較直接,但是由于一開始就定義了分塊大小,后續處理起來不夠靈活。因此提供了第二種讀取方法。
二、先將數據集讀取為可迭代對象,再分塊讀取(更靈活)
?這種方法將數據集文件讀取為時可迭代對象不定義分塊,用分塊的方式讀取read_csv()方法返回的可迭代對象。實現第一步要在read_csv()方法中指定參數iterator為True:
reader = pd.read_csv('某招聘網站數據.csv', usecols = ['positionId', 'companyId', 'positionName'],
iterator=True)
以下是用分塊方式遍歷reader,注意使用到的get_chunk()方法和里面的參數,參數定義分塊大小,可以靈活調節:
while True:
try:
print(reader.get_chunk(10))
except StopIteration:
break
總結
綜上所述,兩種方法都能用pandas實現數據的分塊讀取,對于數據量較大的數據集還是比較實用的。兩種方法的優劣體現在直接性和靈活性上,可以根據實際需求自行選擇。
原文鏈接:https://blog.csdn.net/weixin_45370422/article/details/125963245
相關推薦
- 2022-07-17 Python中使用tkFileDialog實現文件選擇、保存和路徑選擇_python
- 2022-02-02 使用layui框架時,select的onchange事件沒有生效。
- 2022-10-16 Python實現自定義Jupyter魔法命令_python
- 2022-04-14 C語言的分支和循環語句你了解嗎_C 語言
- 2023-12-20 Nacos2.2.3版本運行startup.cmd出現閃退,無錯誤信息解決方法
- 2021-12-03 C++學習之線程詳解_C 語言
- 2022-04-21 Android自定義View實現標簽流效果_Android
- 2022-05-03 shell腳本批量創建用戶的方法小結_linux shell
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支