JupyterLabの便利機能を紹介します。
目次
- 画面の分割
- セルのコピー
- Show in File Browser
- 「!」
-
マジックコマンド
- %pwd
- %time, %%timeit
-
%%bash, %%script bash
- grep を使ったファイル検索
- %debug, %pdb on
- %lsmagic
- ?
- ??
-----
画面の分割
ノートブックをドラッグ&ドロップすると画面を分割できます。
2つのノートブックを開いた状態の場合:
- 縦2分割
- 横2分割
同様に、3分割, 4分割… なども自由にできます。
- 3分割
- 4分割
セルのコピー
ドラッグ&ドロップでセルの移動、コピーができます。
- 同じノートブック内でセルをドラッグ&ドロップするとセルごと移動します。
- 異なるノートブック間でセルをドラッグ&ドロップするとセルがコピーされます。
Show in File Browser
開いている Notebook がある場所をFile Browser で開きたい時に使います。
- ファイル名の部分を右クリックして、Show in File Browser をクリックします(このときFile Browser ではNotebook がある場所とは異なる場所を表示しています)
- File Browser でファイルがある場所を表示します
「!」
LinuxコマンドなどのシステムコマンドをJupyterNotebook 上で使いたい場合に、先頭に「!」をつけて実行します。
!ls
-a オプションで隠しフォルダ、隠しファイルを表示します。
!ls -a
!pwd
現在のワーキングディレクトリを標準出力で返します。返り値を変数に与えることもできます。%pwd では 標準出力、%pwd では文字列として出力されるという違いがあります。
!pwd
!pip
Python の標準パッケージ管理ツールです。インターネットで公開されているパッケージのインストール、アンインストールなどができます。
主なコマンド
- install [パッケージ名] パッケージのインストール
- uninstall [パッケージ名] パッケージのアンインストール
- list インストールしたパッケージのリスト
pip のマニュアルはこちらです。
!tar
tarファイルを解凍します。正しく展開できたら展開されてたファイルが表示されます。
使用例: tar.gz ファイルの解凍
!tar xvf test.tar.gz
!du
ディレクトリの使用容量を表示します。
使用例:ディスクを圧迫している上位10ディレクトリを表示
!du -sh /home/jovyan/* | sort -hr | head -10
例:おまけ
!apt-get moo
マジックコマンド
IPythonカーネルが提供しており、 「%」または 「%%」を先頭につけることで、ターミナルのコマンドやPython以外の言語を組み合わせることができます。
「%」はそのあとに続く文に、「%%」のときは セル全体に対して適用され、それぞれラインマジック、セルコマンドと呼ばれます。
%pwd
ワーキングディレクトリのパスを文字列として取得します。返り値を変数に与えることもできます。!pwd では 標準出力、%pwd では テキストとして出力される違いがあります。
例)
current_dir = %pwd
current_dir
%time, %timeit
%time は 行毎の CPU time と Wall time を出力します。
%timeit は 行毎の 何回か試行した平均の計測時間(デフォルトはCPU時間)を出力します。
例)%time, %timeit を使ってエネルギーの推論にかかる時間を計測
%time atoms.get_potential_energy()
%timeit atoms.get_potential_energy()
%%bash, %%script bash
bash コマンドを実行できます。
%%bash は %%script というシェルコマンドを実行可能にするマジックコマンドのbashモード(%%script bash)のショートカットで同じ処理をします。
使用例: grep で 文字列を含むノートブックファイル(.ipynb)を検索
%%bash
grep -rIl --include="*.ipynb" "エネルギー" /home/jovyan/
%debug, %pdb on
Pythonの標準デバッガである pdb を起動します。%debug はエラーが起きた後に新しいセルで実行すると直前のエラーについてデバックします。一方で%pdb on はデバッグを実行したいセルの先頭に挿入して実行します。
pdb 起動後の使い方は pdb のマニュアルをご覧ください。
https://docs.python.org/ja/3/library/pdb.html
主なpdbコマンド
-
- print or p [変数名] :変数をプリント
- list or l,ll エラー周辺のコードを表示(llでより広範囲を表示)
%debug (エラーが起きた後に使う)
%pdb on (セルの文頭に追記)
%lsmagic
使えるマジックコマンド一覧を表示します。
%lsmagic
?
マジックコマンドの後ろにつけるとそのマジックコマンドの説明を出力します。
??
マジックコマンドの後ろにつけるとそのマジックコマンドのソースコードを出力します。