繁体   English   中英

挑选pandas DataFrame的最快方法是什么?

[英]What's the fastest way to pickle a pandas DataFrame?

哪个更好,使用Pandas内置方法还是pickle.dump

标准泡菜方法如下所示:

pickle.dump(my_dataframe, open('test_pickle.p', 'wb'))

Pandas内置方法如下所示:

my_dataframe.to_pickle('test_pickle.p')

感谢@qwwqwwq我发现pandas有一个内置的to_pickle方法用于数据帧。 我做了一个快速测试:

In [1]: %timeit pickle.dump(df, open('test_pickle.p', 'wb'))
10 loops, best of 3: 91.8 ms per loop

In [2]: %timeit df.to_pickle('testpickle.p')
10 loops, best of 3: 88 ms per loop

所以看起来内置只是更好(对我来说,这很有用,因为它意味着可能不值得重构代码来使用内置) - 希望这有助于某人!

轻松基准,对吗?

在此输入图像描述

完全没有区别,实际上我希望Pandas实现getstate,这样调用pickle.dump(df)实际上与调用df.to_pickle()相同。

如果在Pandas源代码中搜索示例__getstate__ ,您会发现它是在多个对象上实现的

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM