我已经将Jupyter笔记本文件(ipynb(作为json对象读入Jupyter以进行清理:
import json
with open('C:/Python/Scripts/MyNotebook.ipynb') as json_file:
jsonin= json.load(json_file)
然后,我删除了一些没有指定字符串的代码块#keepthis
:
jsonout=jsonin
if '#keepthis' not in str(jsonout['cells'][1]['source']):
jsonout['cells'][1] = np.nan
这工作正常。我现在如何将 jsonout 转换回 .ipynb 文件? 我试过这个:
!jupyter nbconvert --to jsonout 'C:/Python/Scripts/MyNotebookClean.ipynb'
但是尽管在与原始MyNotebook.ipynb
文件相同的位置手动创建MyNotebookClean.ipynb
文件,但我还是收到此错误:[NbConvertApp] WARNING | pattern "'C:/Python/Scripts/MyNotebookClean.ipynb'" matched no files
我找到了将 json 对象写回 ipynb 文件的答案。 很简单:
with open('C:/Python/Scripts/MyNotebookClean.ipynb', 'w') as outfile:
json.dump(jsonout, outfile)
另外,我应该使用del jsonout['cells'][1]
而不是jsonout['cells'][1] = np.nan