提问者:小点点

使用多重处理地图与熊猫数据帧?


我正在使用(python的)panda的map函数来处理一个大的CSV文件(约50GB),如下所示:

import pandas as pd

df = pd.read_csv("huge_file.csv")
df["results1"], df["results2"] = df.map(foo)
df.to_csv("output.csv")

有没有一种方法可以在这方面使用并行化?也许使用多处理的map函数?

谢了,荷西


共1个答案

匿名用户

请参见此处的分块阅读文档、此处的示例和此处的附录

你最好以块的形式读取你的csv,进行处理,然后将其写入csv(当然,你最好转换为HDF)。

  • 占用相对恒定的内存量
  • 高效,可以并行完成(通常需要一个HDF文件,您可以从中选择节;csv不适合这样做)
  • 直接进行多重处理不太复杂