2-5. Jupyter Notebook と JupyterLab (ローカル PC にインストール)

本サイトで紹介している商品・サービス等の外部リンクには、アフィリエイト広告が含まれる場合があります。

概要

インタラクティブにコードを書きながら Python を実行できるツールとして Jupyter Notebook が広く利用されてきました。その進化版として登場したのが JupyterLab です。

手元の PC に Jupyter Notebook と JupyterLab を入れて動かしてみましたので記載しておきます。

Jupyter とは

Jupyter Notebook / JupyterLab は、オープンソースプロジェクト Project Jupyter によって開発されています。
公式サイト : https://jupyter.org/

Jupyter 自体は Pythonで実装されたWebアプリケーションです。
実際のコード実行部分は「カーネル」という仕組みで分離されていて、カーネルを入れ替えることで拡張可能となっています。

  • Python の場合 → ipykernel が動作
  • R の場合 → IRkernel
  • Julia の場合 → IJulia



Jupyter の名前の由来は、プロジェクトが元々サポートしていたプログラミング言語、Julia , Python , R を組み合わせたものとなっています。

The name Jupyter comes from the three programming languages the project originally supported: Julia (ju), Python (pyt) and R (r).

https://docs.jupyter.org/en/latest/what_is_jupyter.html


Jupyter Notebook とは

Jupyter Notebook は、セル(Codeセル・Markdownセル)単位でコードを記述し、実行結果をすぐに確認できるインタラクティブな開発環境です。

Jupyter 自体は Pythonで実装されたWebアプリケーションです。

「ノートブック形式」でコード、テキスト、数式、画像、グラフをまとめられるため、データ分析の過程を記録・共有しやすいのが特徴です。

主な特徴

  • ブラウザ上で動作
  • Python 以外にも R, Julia など多言語対応
  • コードと結果、解説を一体化した「実験ノート」として活用できる
  • .ipynb という拡張子のファイルで保存・共有
  • シンプルで軽量
  • プロジェクトが大きくなったり、複数のファイルやツールを同時に扱うのには不向き

JupyterLab とは

JupyterLab は Jupyter Notebook の次世代インターフェースです。

Notebook を中心にしつつ、タブやパネルを自由に配置して、複数のノートブック、ターミナル、テキストファイル、コンソールを同時に操作できます。

主な特徴

  • ブラウザ上で動作
  • マルチタブ・マルチウィンドウ対応
  • ドラッグ&ドロップでレイアウト変更可能
  • Notebook, テキストエディタ, ターミナル, ファイルブラウザを一画面で統合
  • 拡張機能(Extensions)で機能を強化可能(例:Git連携、変数ビューア)

JupyterLab と Notebook の違い

項目Jupyter NotebookJupyterLab
UI単一のノートブック画面中心マルチタブ・レイアウト自由
機能コード実行、Markdown記述が中心Notebook 機能 + 拡張機能 + 統合開発環境的要素
拡張性限定的プラグインで拡張可能
ファイル操作シンプルエクスプローラ搭載で複数ファイル管理
利用対象小規模分析、学習用大規模分析、プロジェクト管理

インストール方法

Jupyter は Python で動作するため、まずは Python 環境を用意する必要があります。
Python がインストール済みであれば、pip または conda で簡単に導入できます。

pip を使う場合

最もシンプルな方法です。

# Jupyter Notebook のインストール
pip install notebook

# JupyterLab のインストール
pip install jupyterlab

# Windows で py.exe から実行する場合
py -m pip install notebook
py -m pip install jupyterlab

インストール後は以下のコマンドで起動できます。

# Windows で py.exe から実行する場合
py -m notebook
py -m jupyterlab

conda を使う場合(Miniforge)

Miniforge の環境でも同様にインストールできます。(Anaconda/Miniconda でも同様)

# Jupyter Notebook のインストール
conda install notebook

# JupyterLab のインストール
conda install jupyterlab

インストール後は以下のコマンドで起動できます。(Windows の場合、Miniforge Prompt から実行)

# Notebook を起動
jupyter notebook

# JupyterLab を起動
jupyter lab

仮想環境で試す場合

システム全体の Python に変更を加えずに、venv や conda で仮想環境を作成し acitvate してから、上記を実行すれば、パッケージの競合などが避けられます。

具体的な使い方

Notebook の基本的な操作

(1) [File] メニュー – [New] – [Notebook] – 必要に応じて kernel (ipykernel) を選択

新規 Notebook 作成 - カーネル選択

(2) 表示された Notebook で操作します。

セルの種類: Code セルでプログラムを実行、Markdown セルで説明文や数式を記載。

実行方法: Shift + Enter でセルを実行。

Hello World! の出力例):

ライブラリ利用例):

import pandas as pd
import matplotlib.pyplot as plt


# サンプルデータを生成
df = pd.DataFrame({
"x": range(10),
"y": [i**2 for i in range(10)]
})


# データの先頭を表示
print(df.head())


# グラフを描画
plt.plot(df['x'], df['y'], marker='o')
plt.xlabel("x")
plt.ylabel("y = x^2")
plt.show()

マジックコマンド: %time%matplotlib inline なども活用できます。
(Jupyter 経由で動作している ipython に依存するので、Notebookや JupyterLab 経由以外だと使えません。)
参考: https://ipython.readthedocs.io/en/9.0.2/interactive/magics.htm

# 実行時間を計測
%time
result = [x**2 for x in range(1000000)]
マジックコマンド %time を実行

JupyterLab の便利な使い方

複数タブ利用: Notebook とターミナルを並べて作業可能。

ファイルブラウザ: 左ペインからプロジェクトの全ファイルを管理。

拡張機能: 例として jupyterlab-git を導入すれば Git 操作をブラウザ内で実行可能。

まとめ

  • Jupyter Notebook: シンプルで学習や軽量な分析に最適。
  • JupyterLab: Notebook の機能をすべて含み、さらに拡張性が高く開発や大規模分析向け

プロジェクトの規模や目的に応じて使い分けるのがよさそうです。