Jupyter Notebookの後継?Jupyter Labをつかってみた
自然言語の処理をする際に、JupyterNotebookと言われるノートブック形式のWebツールを使っている。
以下のようにPythonのコードを書きながらメモもとれ分析の実行結果(勿論グラフも)もみれるというすぐれものだ。このツールが最初に出たかはわらかないが、Spark(Scala)を動かすためのツールなどもオマージュして作られている。
また、GoogleはColaboratoryやAWSのSageMaker、IBMのIBM Data Science Experience、MSのMicrosoft Azure Notebooksなどがある。みんな大好きなツールというのはおわかりだろう。
そんなJupyterNotebookに後継っぽいのが出てると聞いて今回は使ってみる。
JuyputerLabについて調べてみる
あまり英語はわからないが、next-generation
という単語があるのでおそらく次世代のJupyterなんだろうなと見て取れる。
開発自体は、2015年ごろから行われていて、今でも割と活発に行われてるっぽい。
JupyterLabをインストールする
さっそくReadme
通りにインストールしてみる。
$ pip install jupyterlab Requirement already satisfied: jupyterlab in /usr/local/anaconda3/lib/python3.6/site-packages Requirement already satisfied: notebook>=4.3.1 in /usr/local/anaconda3/lib/python3.6/site-packages (from jupyterlab) Requirement already satisfied: jupyterlab_launcher>=0.4.0 in /usr/local/anaconda3/lib/python3.6/site-packages (from jupyterlab)
よっしゃ!インストールや!ともったら、anaconda
でPython
をインストールした際にすでに入ってたっぽい。。
If you are using a version of Jupyter Notebook earlier than 5.3, then you must also run the following command after installation to enable the JupyterLab server extension:
jupyter
のバージョンが5.3以前の人は引き継がせるためにはコマンドを打つ必要があるらしい。
jupyter --version
4.3.0
4.3なので打つ。
$ jupyter serverextension enable --py jupyterlab --sys-prefix Enabling: jupyterlab - Writing config: /usr/local/anaconda3/etc/jupyter - Validating... jupyterlab OK
JupyterLabの起動
インストールもおわったので、早速起動してみる。
$ jupyter lab [I 22:17:21.036 LabApp] JupyterLab alpha preview extension loaded from /usr/local/anaconda3/lib/python3.6/site-packages/jupyterlab JupyterLab v0.27.0 Known labextensions: [I 22:17:21.039 LabApp] Running the core application with no additional extensions or settings [I 22:17:21.046 LabApp] Serving notebooks from local directory: /Users/SayKicho/develop/analysis-practice/word2vec/jupyter [I 22:17:21.046 LabApp] 0 active kernels [I 22:17:21.046 LabApp] The Jupyter Notebook is running at: http://localhost:8888/?token=d061cb4b3067b85e8ca007f1ac4cc6130b2cfb908b07a6d5 [I 22:17:21.046 LabApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation). [C 22:17:21.049 LabApp] Copy/paste this URL into your browser when you connect for the first time, to login with a token: http://localhost:8888/?token=d061cb4b3067b85e8ca007f1ac4cc6130b2cfb908b07a6d5
最初のログインがアニメーションになってて、、次世代を感じる。
Notebookを押してみるといつも通りのJupyterNotebookがでるんだけど、なんと・・同じ画面で複数(Tab)開ける!!!以前だと、複数のノートを開くためにはブラウザ自体で新しいタブを開く必要があったのに、もうすでに次世代を感じている。
ConsoleではPythonの実行がコンソール画面でできるのだが、Notebookでいいじゃんと思ったり思わなかったり・・・。
一番次世代感を感じたのは、ドラッグ&ドロップによるセルの移動だ。こいつは便利だ・・・。使い始めたばかりの時からこの機能はホスィと思っていたので嬉しい。
他にデータファイル(CSVなど)をテーブル表示してくれるなどの便利機能があるっぽいが、そもそもJupyterNotebookですらあまり使い込んでないので、便利そうだなーというくらいにしかまだわからない。
終わりに
分析の作業量が少なくJupyterLabの魅力が伝えきれてないし、悪いところもわかってないが、自分がいいなと思う機能を紹介した。もっと分析の作業が増えた時に良いとこ悪いところに気づくと思うので、その際にはまた追加して書く。
vim Extensionも試してみた。 kzkohashi.hatenablog.com