【发布时间】:2018-03-29 22:34:13
【问题描述】:
我已经为之前的分析构建了一个 Jupyter 笔记本。
我想开始一个不同的分析分支,使用之前分析中的一些相同数据框。
如何在我的新笔记本中使用以前的数据帧而不处理我的所有代码来重建我以前的分析?
【问题讨论】:
标签: jupyter-notebook
我已经为之前的分析构建了一个 Jupyter 笔记本。
我想开始一个不同的分析分支,使用之前分析中的一些相同数据框。
如何在我的新笔记本中使用以前的数据帧而不处理我的所有代码来重建我以前的分析?
【问题讨论】:
标签: jupyter-notebook
您可以与Jupyter magics 分享data across notebooks。例如:
给定
# Notebook 1
import pandas as pd
d = {"one" : pd.Series([1., 2., 3.], index=list("abc"))}
df = pd.DataFrame(d)
代码
%store df
在单独的笔记本中调用 DataFrame:
# Notebook 2
%store -r df
df
输出
在older IPython docs 中了解更多信息。另请参阅 Jupyter 的 %bookmark magic 共享目录。
【讨论】:
您可以腌制数据框,然后将数据框加载到新笔记本中。这对于短期数据重用来说很好。对于长期数据存储,写入然后读取文本 csv 文件可能更可靠。
pickle_save.py
import os
import pandas as pd
pickle_location = r'd:\temp\pickle_file'
df = pd.DataFrame({'A':1,'B':2}, index=[0])
df.to_pickle(pickle_location)
if os.path.exists(pickle_location):
print('pickle created')
pickle_load.py
import os
import pandas as pd
pickle_location = r'd:\temp\pickle_file'
df_load = pd.read_pickle(pickle_location)
print(df_load)
【讨论】: