11

私はnbconvertについて知っており、それを使用して静的な html または ipynb ファイルを生成し、結果を出力します。ただし、既に実行しているカーネルに接続されたままのノートブックを生成できるようにして、すべてのテンプレート セルを実行した後にさらにデータを調査できるようにしたいと考えています。それを行う方法はありますか?

4

3 に答える 3

2

どうやら、Python API を介してこれを行うことができます。私は自分で試したわけではありませんが、解決策を探している人のために、このPR のコメントに例があります。

from nbconvert.preprocessors.execute import executenb, ExecutePreprocessor
from nbformat import read as nbread
from jupyter_client.manager import start_new_kernel

nb = nbread('parsee.ipynb', as_version=4)
kernel_name = nb.metadata.get('kernelspec', {}).get('name', 'python')
km, kc = start_new_kernel(kernel_name=kernel_name)
executenb(nb, kernel=(km, kc))
kc.execute_interactive('a')  # a is a variable defined in parsee.ipynb with 'a = 1'
于 2020-03-04T11:53:34.693 に答える
1

あなたの目的についてはよくわかりません。しかし、私の一般的な解決策は、

  1. コマンドラインでノートブックを実行し、同時に実行を確認するには、

    jupyter nbconvert --debug --allow-errors --stdout --execute test.ipynb

これは、例外が発生した場合でも、デバッグ モードですべてのセルを実行することを示します。しかし、実行が終わるまで結果を見ることができません。

  1. 結果を html ファイルに出力し、html ファイルを開いて結果を確認します。これはもっと便利だと思いました。

    jupyter nbconvert --execute --allow-errors --stdout test.ipynb >> result.html 2>&1

result.html を開くと、 ここに画像の説明を入力

すべてのエラーと結果がページに表示されます。

皆さんから他の回答/解決策を学びたいと思います。ありがとうございました。

于 2016-11-08T20:29:09.547 に答える