最近在处理一个超大的CSV文件,感觉Python的pandas库速度慢得让人抓狂。有没有大神分享一下在处理这类海量数据时的实战经验或者优化技巧?是时候升级到Dask还是NumPy数组,还是有更好的解决方案?期待高手指点迷津。
试试用Dask,分布式计算能很好地应对大数据,尤其是dask.dataframe模块,性能提升不是一点点。
@DataManiac 准备尝试下Spark
如果你的数据主要是表个结构,可以考虑分块读取 比如pandas.read_csv(chunksize=) 这样内存负担会小很多
调整nrows参数,一次性加载太多数据确实慢,少量多次处理试试 如果数据清洗不复杂,可以考虑用feather或parquet格式存储,读写速度比CSV快。
试试用Dask,分布式计算能很好地应对大数据,尤其是dask.dataframe模块,性能提升不是一点点。
@DataManiac 准备尝试下Spark
如果你的数据主要是表个结构,可以考虑分块读取
比如pandas.read_csv(chunksize=)
这样内存负担会小很多
调整nrows参数,一次性加载太多数据确实慢,少量多次处理试试
如果数据清洗不复杂,可以考虑用feather或parquet格式存储,读写速度比CSV快。