pandas分批读取CSV并分批处理数据

简介: pandas分批读取CSV并分批处理数据

pandas分批读取CSV并分批处理数据


算法工程师要面对的一大主要矛盾:不够用的服务器内存和巨大的训练集数据量之间的矛盾。

如果使用pandas处理CSV数据,会先把整个CSV加载到内存之后再处理,所以如果你的CSV文件巨大(其实也不一定非常大,我的数据集只有4、50个G,可惜当时服务器内存只有60多个G了),就要想其他方法了。

我之前都是把CSV文件手动切分成10个小文件,再逐个处理。

现在觉着这方法太傻了啊。

其实pandas 读取CSV文件的函数 read_csv() 中自带两个参数就可以解决:

nrows=
skiprows=

其中前者控制本次读取多少行,后者用于控制跳过多少行然后从其下一行开始读。

这样每次就只读取 nrows 行数据加载到内存,先处理这部分数据,处理完之后再去加载下一批。

备注:

如果最后一个分组不够 nrows 的参数值也不会报错,会把剩余部分当做一个分组。比如CSV文件中有5行数据,每次读两行数据,即 nrows=2,最后只剩下一行,就把这一行当做一组。

以上,问题解决~

相关文章
|
1月前
|
Python
使用 Pandas 库时,如何处理数据的重复值?
在使用Pandas处理数据重复值时,需要根据具体的数据特点和分析需求,选择合适的方法来确保数据的准确性和唯一性。
119 8
|
3天前
|
存储 数据挖掘 数据处理
Pandas 数据筛选:条件过滤
Pandas 是 Python 最常用的数据分析库之一,提供了强大的数据结构和工具。本文从基础到高级,介绍如何使用 Pandas 进行条件过滤,包括单一条件、多个条件过滤、常见问题及解决方案,以及动态和复杂条件过滤的高级用法。希望本文能帮助你更好地利用 Pandas 处理数据。
107 78
|
5天前
|
数据挖掘 索引 Python
Pandas数据读取:CSV文件
Pandas 是 Python 中强大的数据分析库,`read_csv` 函数用于从 CSV 文件中读取数据。本文介绍 `read_csv` 的基本用法、常见问题及其解决方案,并通过代码案例详细说明。涵盖导入库、读取文件、指定列名和分隔符、处理文件路径错误、编码问题、大文件读取、数据类型问题、日期时间解析、空值处理、跳过行、指定索引列等。高级用法包括自定义列名映射、处理多行标题和注释行。希望本文能帮助你更高效地使用 Pandas 进行数据读取和处理。
38 13
|
1天前
|
算法 数据挖掘 索引
Pandas数据排序:单列与多列排序详解
本文介绍了Pandas库中单列和多列排序的方法及常见问题的解决方案。单列排序使用`sort_values()`方法,支持升序和降序排列,并解决了忽略大小写、处理缺失值和索引混乱等问题。多列排序同样使用`sort_values()`,可指定不同列的不同排序方向,解决列名错误和性能优化等问题。掌握这些技巧能提高数据分析效率。
21 9
|
1月前
|
Python
|
1月前
|
Python
|
1月前
|
Python
Pandas 常用函数-数据合并
Pandas 常用函数-数据合并
40 1
|
1月前
|
索引 Python
Pandas 常用函数-数据排序
10月更文挑战第28天
17 1
|
1月前
|
Python
Pandas 常用函数-查看数据
Pandas 常用函数-查看数据
21 2
|
1月前
|
Python
Pandas 常用函数-数据选择和过滤
Pandas 常用函数-数据选择和过滤
17 0