在使用pandas dataframe处理大型csv文件时,我发布了一个关于内存错误的问题。更清楚的是,我在问另一个问题:合并大型csv文件(超过3000万行)时出现内存错误。那么,解决方案是什么?谢谢!
答案 0 :(得分:0)
使用Python / Pandas处理数千万行的数据集并不理想。考虑将数据存储到像Redshift这样的数据库中,而不是处理大量的CSV,您可以比使用Pandas更快地查询和操作数据数千倍。一旦您的数据在数据库中,您就可以使用SQL将您的数据聚合/过滤/重塑为“咬合大小”导出,并根据需要使用Pandas进行本地分析。
长期来看,考虑使用Spark,这是一个基于Scala构建的分布式数据分析框架。它肯定比Pandas有更陡峭的学习曲线,但借用了许多核心概念。
Redshift:https://aws.amazon.com/redshift/
Spark:http://spark.apache.org/