当前位置: 首页 > 知识库问答 >
问题:

如何可逆地将Pandas dataframe存储到/从磁盘加载

巫马淳
2023-03-14

现在,每次运行脚本时,我都会导入一个相当大的CSV作为数据文件。是否有一个很好的解决方案来保持dataframe在运行之间始终可用,这样我就不必花费所有的时间等待脚本运行?

共有1个答案

万俟均
2023-03-14

最简单的方法是使用to_picklepickle:

df.to_pickle(file_name)  # where to save it, usually as a .pkl

然后您可以使用以下命令将其加载回来:

df = pd.read_pickle(file_name)

注意:在0.11.1之前,saveload是实现这一目的的唯一方法(现在它们分别被to_pickleread_pickle所取代)。

import pandas as pd
store = pd.HDFStore('store.h5')

store['df'] = df  # save it
store['df']  # load it

从0.13开始,还有msgpack,它可以更好地实现互操作性,作为JSON的更快替代方案,或者如果您有python对象/文本重的数据(请参见此问题)。

 类似资料:
  • 如EhCache留档所述: 实际上,这意味着持久性内存中缓存将启动,其所有元素都将在磁盘上。[...]因此,Ehcache设计不会在启动时将它们全部加载到内存中,而是根据需要懒惰地加载它们。 我希望内存缓存启动时将所有元素都存储在内存中,我该如何实现? 这是因为我们的网站对缓存执行了大量的访问,所以我们第一次访问网站时,它的响应时间非常长。

  • 问题内容: 我的目标: 显示一个对话框,提示用户保存从AWS下载的文件。 我的问题: 我目前正在使用awssum- amazon-s3创建下载流。但是,我仅设法将文件保存到服务器或将其流式传输到命令行…如您从我的代码中看到的那样,我的最后一次尝试是尝试手动设置失败的内容处置头。我无法使用res.download(),因为已经设置了标头? 我如何实现我的目标? 我的节点代码: 我的角度代码: 编写此

  • 我试图迁移我的本地主动存储文件到谷歌云存储。我试图只是复制文件的到我的GCS桶-但它似乎不工作。 我发现404未找到错误,因为它正在搜索以下文件: 我的本地存储目录有一个完全不同的文件夹结构,其中包含以下文件夹:。 我检索图像的方法如下: 我错过了什么?

  • 问题内容: 我有一个长度为2.2亿(固定)的int和float数组。现在,我想将这些阵列存储到内存和磁盘/从内存和磁盘上载。目前,我正在使用Java NIO的FileChannel和MappedByteBuffer解决此问题。它可以正常工作,但大约需要5秒钟(Wall Clock Time)(用于将阵列存储到内存或从内存上载到磁盘或从磁盘上载到磁盘)。实际上,我想要一个更快的。有人可以帮我吗,有没

  • 问题内容: 我试图捕获与表单一起发送的文件,并在对其进行保存之前对其执行一些操作。因此,我需要在temp目录中创建此文件的副本,但是我不知道如何到达它。Shutil的功能无法复制此文件,因为没有路径。那么,是否有其他方法可以执行此操作? 我的代码: 引起: 和调试: 问题答案: 这是类似的问题,可能会有所帮助。