ジュピターノートブックの1つのセルをエクスポートする方法は?


10

私は現在、Jupyterノートブックで作業/プロトタイピングしています。スタンドアロンのiPythonシェルでコードの一部を実行したい。

とりあえずiPythonコード(ファイル->ダウンロード形式)をエクスポートし、それをiPythonで実行します(%runを使用)。動作しますが、1つのセルまたはセルのセットのみをエクスポートします。そのため、Jupyterノートブックで変更したものだけを実行できます。


jupyterノートブックのように意味があるかどうかはわかりませんが、カーネルは以前に実行されたコマンドの状態を維持しますが、ipython%runコマンドの場合はそうではない可能性があります。
Rohan Sadale 16

3
あなたは、単にIPythonの魔法をコピーして貼り付けるか、使用することができ、単一セルの場合:1)%% WRITEFILE、参照stackoverflow.com/questions/21034373/...参照、保存または2)%stackoverflow.com/questions/947810/...コマンドを。
Valentas

1
@RohanSadale私が欲しいのは、jupyterノートブックとipythonシェルの両方で機能することです。私のノートブックは共有されるようになり、以前に自分のノートブックでコマンドを実行したいのですが、より大きなデータセットを使っていくつかのデータをテストしたい場合は、ipythonシェルで作成しました。
Manu H

@Valentasあなたのコメントは回答として書き直されるべきです。
Manu H

関連の質問を参照してください:stackoverflow.com/questions/27952428/...
Pierz

回答:


4

このスタックの質問を見る

%% capture Jupyter Notebookの魔法のコマンドを使用してセルの出力をキャッチし、テキストファイルに貼り付けることができます

with open('output.txt', 'w') as out:
   out.write(cap.stdout)

code.txtなどの特定のファイルにコードをセル化する場合は、マジック関数%% writefileを使用できます。

%%writefile example.txt
ab = 'This is code'
a = 5
print(a+ 2)

また、ファイルに追加する場合は、-aパラメータを使用する必要があります


あなたはその質問を誤解していると思います。エクスポートしたいのはセルの結果ではなく、そのセルに書き込んだコードです。
Manu H

ipython.readthedocs.io/en/stable/interactive/magics.html次に、%% writefileマジック関数を使用できます
R__A_a_

1

Jupyterノートブックで1つのセルのみをエクスポートできるかどうかはわかりません

しかし、私はあなたがpythonファイルとしてダウンロードして、新しいJupyterノートブックに必要な特定のセルをコピーして貼り付けることができることを知っています。

他にサポートが必要な場合はお知らせください。


0

これを行う方法の1つは、Pythonの出力キャッシュシステムを使用してセルの出力にアクセスし、ファイルに保存できるようにすることです。番号付きのセルxからの出力はという名前の変数に格納され_x、最後のコマンドからの出力は_etcなどです。たとえば、セル番号10の出力cell_10.pickleをpythonのピクル形式を使用してファイルに保存します。

import pickle
with open('cell_10.pickle', 'wb') as f:
    pickle.dump(_10, f, pickle.HIGHEST_PROTOCOL)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.