Pandas数据帧消耗太多内存。还有别的选择吗?

2024-06-16 13:04:13 发布

您现在位置:Python中文网/ 问答频道 /正文

尽管遵循了减少Dataframe对象内存使用的最佳实践,但我仍然发现内存使用率太高。我尝试过分块、转换数据类型、读取更少的数据……等等

例如,尽管我正在读取的CSV文件大2.7GB,但当我使用pd.read_CSV时,task manager显示使用了25GB的RAM。我曾尝试将对象转换为类别,但有些列不适合转换,因此对象数据类型是我唯一的选择

有人建议如何减少内存使用,或者为低内存消耗的数据帧对象提供替代python库吗?我已经尝试过PySpark,但是每次我想要运行一个简单的show语句时,懒惰的评估都会让我崩溃


Tags: 文件csv数据对象内存dataframetaskread
1条回答
网友
1楼 · 发布于 2024-06-16 13:04:13

为什么要使用Dask dataframe

Dask DataFrame is used in situations where Pandas is commonly needed, usually when Pandas fails due to data size or computation speed.

For data that fits into RAM, Pandas can often be faster and easier to use than Dask DataFrame. While “Big Data” tools can be exciting, they are almost always worse than normal data tools while those remain appropriate.

相关问题 更多 >