我通过pd.read_sql(... chunksize = 10000)从数据库中读取大量数据,生成df生成器对象。
虽然我仍然可以使用该数据框将其与pd.merge(df,df2 ...)合并,但某些功能不再可用,例如df.to_cs(...)
处理这个问题的最佳方法是什么?如何将这样的数据帧写入CSV?我需要手动迭代吗?
答案 0 :(得分:1)
您可以单独处理每个块,也可以使用例如组合它们。 pd.concat
对所有块进行整体操作。
单独地,你确实会迭代这些块:
for chunk in pd.read_sql(...chunksize=10000):
# process chunk
要合并,您可以使用list comprehension
:
df = pd.concat([chunk for chunk in pd.read_sql(...chunksize=10000)])
#process df