保存/加载数据和工作

时间:2017-10-26 15:38:33

标签: python jupyter-notebook pickle

我正在使用jupyter笔记本。我有大量的数据,我必须先加载然后使用。每次我关机并启动笔记本电脑或笔记本电脑时,我都不想重新加载它。我想知道我每次保存并检查笔记本每次它是否保存已加载的数据以及我所做的所有工作?所以,如果我关闭笔记本并稍后重新打开它,我就可以开始在我离开的地方工作了吗?或者我需要使用像泡菜这样的东西吗?如果是这样,有人可以提供一个例子,说明如何使用pickle或类似的东西来保存我的数据和工作并重新加载它?

在r中我只保存一个rdata文件并稍后加载该文件。我对python有点新鲜。

更新

code:

print(df_business[1:3])

Sample Data:

               address                                         attributes  \
1       2824 Milton Rd  {u'GoodForMeal': {u'dessert': False, u'latenig...   
2  337 Danforth Avenue  {u'BusinessParking': {u'garage': False, u'stre...   

              business_id                                         categories  \
1  mLwM-h2YhXl2NCgdS84_Bw  [Food, Soul Food, Convenience Stores, Restaura...   
2  v2WhjAB3PIBA8J8VxG3wEg                               [Food, Coffee & Tea]   

        city                                              hours  is_open  \
1  Charlotte  {u'Monday': u'10:00-22:00', u'Tuesday': u'10:0...        0   
2    Toronto  {u'Monday': u'10:00-19:00', u'Tuesday': u'10:0...        0   

    latitude  longitude                                name neighborhood  \
1  35.236870 -80.741976  South Florida Style Chicken & Ribs     Eastland   
2  43.677126 -79.353285                    The Tea Emporium    Riverdale   

  postal_code  review_count  stars state  
1       28215             4    4.5    NC  
2     M4K 1N7             7    4.5    ON  

UPDATE2:

代码:

import pickle

your_data = df_business

# Store data (serialize)
with open('filename.pickle', 'wb') as handle:
    pickle.dump(your_data, handle, protocol=pickle.HIGHEST_PROTOCOL)

# Load data (deserialize)
with open('filename.pickle', 'rb') as handle:
    unserialized_data = pickle.load(handle)

1 个答案:

答案 0 :(得分:0)

对我来说,只要我没有结束我为那台笔记本运行的内核,我就可以在以后的任何时候恢复它。如果您需要重新启动计算机(因此终止正在使用的内核),则需要重新运行笔记本计算机单元或使用pickle加载预先计算的数据。

有关使用pickle的信息,请参阅this answer