2

我在将 pandas 数据帧的条目写入字符串缓冲区时遇到问题。

可以通过将字符串缓冲区传递给 read_csv 函数来初始化数据帧。

In [80]: buf = StringIO('a,b\n1,2\n')
In [81]: df = pandas.read_csv(buf)
In [82]: df
Out[82]: 
   a  b
0  1  2

做相反的事情并不简单,因为该DataFrame.to_csv函数只接受字符串文件路径。

这种行为有什么好的理由吗?在不先将内容存储在磁盘上的情况下,序列化 pandas DataFrame 的最佳方法是什么?

4

1 回答 1

3

这几乎只是一个疏忽/不一致。我在这里为它创建了一个 GitHub 问题:

https://github.com/wesm/pandas/issues/765

编辑:今天实现了这一点,因此您现在可以在 git master 中将 StringIO 传递给to_csv, 并将成为即将发布的 0.7.0 版本的一部分

于 2012-02-08T17:10:15.740 回答