在Pandas dataframe.to_csv中设置缓冲区为0

时间:2016-02-17 22:04:18

标签: python csv pandas

有没有办法设置' 0'的缓冲区?什么时候使用Pandas dataframe.to_csv()?我查看了文档,似乎不允许这作为参数。我忽略了什么吗?

编辑:我在问,因为我输出的数据帧的大小范围从几百行到几千行(总是使用相同的7列),后来最终检查文件的过程偶尔会失败,因为有时它不是& #39; t写完了。

我当然可以推迟一段时间(3-5分钟),但如果我不这样做,我宁可不要随意减慢我的代码 - 我宁愿强迫在继续之前等待输出完成的代码,当用open()编写文件时,能够设置缓冲区值为' 0'。

1 个答案:

答案 0 :(得分:2)

如果我正确理解您的问题,您可以实施以下内容。此代码段将StringIO实例作为to_csv的第一个参数传递,并调用seek(0)

import StringIO

#### your code here...assuming something like:
#### import pandas as pd
#### data = {"key1":"value1"}
#### dataframe = pd.DataFrame(data, index=dataframe)

buffer = StringIO.StringIO()
dataframe.to_csv(buffer)
buffer.seek(0)
output = buffer.getvalue()
buffer.close()

然后您可以选择操纵output