将熊猫数据框保存到泡菜和CSV之间有什么区别?



我正在学习python pandas。我看到了一个教程,该教程显示了保存熊猫数据框架的两种方法。

  1. pd.to_csv('sub.csv')并打开pd.read_csv('sub.csv')

  2. pd.to_pickle('sub.pkl')并打开pd.read_pickle('sub.pkl')

教程说to_pickle是将数据框保存到磁盘上。我对此感到困惑。因为当我使用to_csv时,我确实看到了文件夹中出现了一个CSV文件,我认为该文件也可以保存到磁盘上吗?

通常,为什么我们要使用to_pickle保存数据框,而不是将其保存到CSV或TXT或其他格式?

csv

  • ✅人可读
  • cross平台
  • slower
  • 更多磁盘空间
  • 在某些情况下不保留类型

泡菜

  • ✅快速节省/加载
  • 无磁盘空间
  • non人类可读
  • 仅python

也看 parquet 格式(to_parquetread_parquet(

  • ✅快速节省/加载
  • 无磁盘空间比泡菜
  • 由许多平台支持
  • non人类可读

泡菜是存储熊猫数据框架的序列化方法。基本上,您正在写下数据框对磁盘的确切表示形式。这意味着列的类型是,索引相同。如果您只将文件另存为csv,则将其存储为逗号分隔列表。根据您的数据集,将其加载后将丢失一些信息。

您可以在此处阅读有关Python中的Pickle Library的更多信息。

最新更新