他の実行環境で作成されたJupyter notebookが自分の環境でdead kernelになるときの対処方法
イントロダクション
人から頂いたipynbファイルが自分の実行環境でdead kernelになってしまいました。つらみ(´・ω・`)
解決方法
jupyter notebookが生成してくれる.ipynbファイルはjson形式のテキストファイルです。( The Jupyter Notebook Format — IPython 3.2.1 documentation )
お好みのテキストエディタでおもむろに.ipynbファイルをひらいていただくとファイルの最後の方にmetadataというところがありますので、そこを自分の環境に書き換えると動きます。自分の環境を知る方法ですが、jupyter notebookで新しい.ipynbファイルを生成すると、そのnotebookの中身のmetadataが自分の環境です。
# Replace前の例 "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python [conda root]", "language": "python", "name": "conda-root-py" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.11" } },
# Replace後の例 "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.0" } },
これで無事dead kernelにならずにipynbファイルを動かすことができました!!(`・ω・´)
ですがソースコードは変換されずそのままですので自分の環境での検証は必須です。お気をつけください。