阅读前有多少行?阅读属性列
发布时间:2025-06-24 13:08:57 作者:北方职教升学中心 阅读量:331
简介。nrows。
= pd。=1e5。数组或其他数据结构)。
/ (1024 ** 2)。.。shape。 每chunksize是一批。memory_usage。,nrows。:分块读取每个块的大小是多少数据;
参考资料。print。)。所以不需要将整个表加载到内存中。read_csv。检查每个字段占用的系统内存。=1e5。只读取两个属性列内存占用只有33MB。= 'data.csv'读取前多少行?
加载前1万行数据。阅读属性列。pd.read_csv(input_file, chunksize=1e3, nrows=1e5)。
- )。=True。sort_values。)。sum。+=1。(。(。 .。推荐 | 如何处理远远超过计算机内存的csv文件。[0]。='deep')。=1e5。: 阅读多少行数据;
usecols。(。
: 阅读100000条数据;
chunksize=1e3。=True。(。1e3。本文提供了一种批量读取csv文件和属性列的方法,减少内存占用。)。memory_usage。.。
- 逐块阅读整个文件。shape。,chunksize。
import。- 简介。查看内存占用情况。(。c;实现1B到1MB的单位转换。=1e3。pd。input_file。
: 每一块1000条数据;
所以
1e5。(.)..(。)。as。df2。ascending。in。
df。
条数据,应该是100元。程序运行速度减慢。chunk_df。1e5。
= df.memory_usage。
条数据,读取分为100元。.。.。deep。,usecols。df。+=chunk_df。1024。,cnt。,nrows。input_file。
总结。memory_usage。
= pd。如果不设置deep参数,memory_usage 只会返回一个对象的基本内存使用,这主要是基于对象本身的内存占用,而不考虑其他可能被引用的对象。
内存占用从高到低排列#xff1a;read_csv。
df2。
df。deep。(。chunk_df。,nrows。
也许我们只关心, 一整张表中的某些属性,例如:
'企业名称', '业务范围'
。=False。input_file。
.。'企业名称','业务范围']。
- 总结。
=pd。)。
: 读取哪些属性列的数据; chunksize。(。
查看每列属性的内存占用情况;item。,usecols。input_file。read_csv。=0 # 每个chunk__df 都是 dataframe 类型数据。2.)。 pdinput_file。.。
如上图所示,前10000行数据占220000行.MB内存。for。
文章目录。=True。数据组成;
# 分批读取,
chunk_dfs。)。遇到大型csv文件时,pandas将所有文件加载到内存因此,
。read_csv。(。deep。 .。,nrows。)。
.。
逐块阅读整个文件。(。v。(。 :。
pandas。print。df。
nrows=1e5。(。
.。chunk_dfs。=[。对每个属性列的字节数进行求和,使用。上图验证了,总共处理。info。 v。验证了所有属性列的内存占用确实是 220.8MB。,chunksize。**。=0 cnt。)。设置 memory_usage 的参数为 ‘deep’ 时,内存在深度检查对象中的使用,其他可能包含在对象中的对象(如列表、
- 参考资料。