我知道,当需要文件的特定转换或输出时(例如,读取特定列或计算聚合),Python中的生成器可以帮助读取和处理大型文件.

然而,对于我来说,当在Python中使用生成器的唯一目的是读取整个文件时,是否有任何好处尚不清楚.

编辑:假设数据集适合内存.

Lazy Method for Reading Big File in Python?

pd.read_csv('sample_file.csv', chunksize=chunksize)

vs. 

pd.read_csv('sample_file.csv')


生成器仅用于读取整个数据而不进行任何数据处理吗?

推荐答案

pd.read_csv('sample_file.csv')中获得的数据帧可能适合内存;然而,pd.read_csv本身是一个内存密集型功能,因此在读取最终将消耗10GB内存的文件时,您的实际内存使用量可能会超过30GB-40GB.在这种情况下,以较小的块读取文件可能是唯一的 Select .

Python相关问答推荐

从一个系列创建一个Dataframe,特别是如何重命名其中的列(例如:使用NAs/NaN)

SQLAlchemy Like ALL ORM analog

dask无groupby(ddf. agg([min,max])?''''

导入错误:无法导入名称';操作';

OpenGL仅渲染第二个三角形,第一个三角形不可见

使用字典或列表的值组合

在用于Python的Bokeh包中设置按钮的样式

在Python中控制列表中的数据步长

有没有办法在不先将文件写入内存的情况下做到这一点?

如何在信号的FFT中获得正确的频率幅值

如何根据一定条件生成段id

Regex用于匹配Python中逗号分隔的AWS区域

分解polars DataFrame列而不重复其他列值

如何在Python中创建仅包含完整天数的月份的列表

对于数组中的所有元素,Pandas SELECT行都具有值

如何判断变量可调用函数的参数是否都属于某个子类?

在Python Polar中从一个函数调用添加多个列

在忽略on列中的重复值的同时连接polars重命名

为什么for循环中会有范围错误?

PySpark:使用重置对窗口进行计数