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

发布于 2021-01-29 18:58: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"

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

关注者
0
被浏览
53
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

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

    pip install dill
    

    保存笔记本会话:

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

    恢复笔记本会话:

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

    资源



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看