当前位置: 首页 > 面试题库 >

如何腌制或存储Jupyter(IPython)笔记本会话以供以后使用

马华茂
2023-03-14
问题内容

假设我正在Jupyter /
Ipython笔记本中进行较大的数据分析,并且完成了大量耗时的计算。然后,由于某种原因,我必须关闭jupyter本地服务器I,但是我想稍后再进行分析,而不必再次进行所有耗时的计算。

我想什么 爱做的是pickle或存储整个Jupyter会话(所有大熊猫dataframes,np.arrays,变量,…),所以我可以放心地关闭服务器知道我可以在完全相同的状态返回到我的会话之前。

在技​​术上甚至可行吗? 有没有我忽略的内置功能

编辑: 根据这个答案,有一个%store
魔术应该是“轻型泡菜”。但是,您必须像这样手动存储变量:

#inside a ipython/nb session
foo = "A dummy string"
%store foo
关闭种子,重新启动内核#r
%store -r foo进行刷新
print(foo) # "A dummy string"

这与我想要的相当接近,但是由于必须手动执行并且无法区分不同的会话,因此它的用处不大。


问题答案:

我认为迪尔很好地回答了您的问题。

pip install dill

保存笔记本会话:

import dill
dill.dump_session('notebook_env.db')

恢复笔记本会话:

import dill
dill.load_session('notebook_env.db')

资源



 类似资料:
  • 什么是保持IPython笔记本版本控制的好策略? 笔记本格式非常适合进行版本控制:如果想要对笔记本和输出进行版本控制,那么这种方式非常有效。当人们只想对输入进行版本控制时,麻烦就来了,不包括单元输出(也称为“构建产品”),单元输出可以是大的二进制blob,尤其是电影和情节。特别是,我试图找到一个好的工作流程: 允许我在包括或排除输出之间进行选择, 防止我在不需要时意外提交输出, 允许我将输出保存在

  • 我回顾了各种相关问题,包括 如何让MathJax在ipython笔记本中启用mhchem扩展 但我不能让它工作。。。 我的测试用例很简单 期待直立的$\pi$,但目前只是'\uppi'回来了。 我已经尝试了以下使用细胞魔法 这会生成

  • 问题内容: 我在Windows 10上使用带Python3的jupyter笔记本。我的计算机具有8GB RAM,至少4GB RAM是可用的。 但是当我想使用以下命令制作大小为6000 * 6000的numpy ndArray时 : 我认为这不会使用超过100MB的RAM。我试图更改数字以查看发生了什么。我可以做的最大数组是(5000,5000)。在估计需要多少RAM时是否犯了错误? 问题答案: J

  • 问题内容: 在IPython / Jupyter Notebook中运行的大多数语言内核的错误报告都指出发生错误的行;但是(至少默认情况下)在笔记本电脑中未显示行号。 是否可以将行号添加到IPython / Jupyter Notebook? 问题答案: -在CodeMirror区域中切换行号。有关其他键盘快捷键,请参见快速帮助。 详细信息- (或)将您带入命令模式,然后按键应切换当前单元格行号的

  • 当我打开Jupyter笔记本(以前是IPython)时,它默认为。 我如何将此更改为其他位置?

  • 我正在使用放心进行API测试自动化。我想在调用API后将响应存储为对象,这样我就可以使用该对象验证一些数据,如状态代码、正文、标题等。 我试着使用但它只允许存储字符串,如果将响应存储为类似字符串的并尝试检索