2017-10-10 172 views
4

我有3個單獨的jupyter筆記本文件處理單獨的數據幀。我爲每個df清理和處理這些筆記本中的數據。有沒有辦法在單獨的筆記本中引用清理/最終數據?從一個Jupyter筆記本文件導入數據幀到另一個

我擔心的是,如果我在一個筆記本上使用所有3個dfs,然後在合併/連接之後對它進行更多操作,它將會長達一英里。我也不想重新編寫一堆代碼來讓數據準備好在我的新筆記本中使用。

回答

0

如果您使用的是熊貓數據框,則一種方法是使用pandas.DataFrame.to_csv()pandas.read_csv()在每個步驟之間保存和加載清理的數據。

  1. Notebook1加載input1並保存result1。
  2. Notebook2加載result1並保存result2。
  3. Notebook3加載result2並保存result3。

如果這是你的數據:

import pandas as pd 
raw_data = {'id': [10, 20, 30], 
      'name': ['foo', 'bar', 'baz'] 
      } 
input = pd.DataFrame(raw_data, columns = ['id', 'name']) 

然後在notebook1.ipynb,它的過程是這樣的:

# load 
df = pd.read_csv('input.csv', index_col=0) 
# manipulate frame here 
# ... 
# save 
df.to_csv('result1.csv') 

...並重復這一過程,鏈中的每個階段。

# load 
df = pd.read_csv('result1.csv', index_col=0) 
# manipulate frame here 
# ... 
# save 
df.to_csv('result2.csv') 

最後,你的筆記本集合將是這樣的:

  • input.csv
  • notebook1.ipynb
  • notebook2.ipynb
  • notebook3.ipynb
  • RESULT1 .csv
  • result2.csv
  • result3.csv

文檔:

相關問題