この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:8
ページ更新者:atom
更新日時:2026-06-10 11:03:32

タイトル: Jupyter Notebook
SEOタイトル: Jupyter Notebook / JupyterLab 入門(インストール・ショートカット・nbconvert・Colab 比較)

この記事の要点
  • Jupyter Notebook はブラウザ上で Python コードと Markdown を交互に書ける対話的環境。データ分析・機械学習の標準ツール
  • インストール: pip install notebook、起動: jupyter notebook
  • 後継 JupyterLabpip install jupyterlab + jupyter lab。タブ・サイドバー付きの IDE 風 UI
  • 主要ショートカット: Shift+Enter(実行・次セル)/ Ctrl+Enter(実行・留まる)/ A/B(上下挿入)/ DD(削除)
  • 出力: jupyter nbconvert --to html notebook.ipynb。クラウド版は Google Colab(GPU 無料・GitHub 連携・環境構築不要)

Jupyter Notebook とは

Jupyter Notebook はコード・実行結果・グラフ・Markdown 文書を 1 つのファイル(.ipynb)にまとめる対話的開発環境です。データ分析や機械学習・教育・実験記録のデファクト標準で、特に Python(IPython カーネル)との相性が抜群。R / Julia / Scala 等の他言語カーネルも追加可能です(Ju-py-te-r の名は Julia / Python / R から)。

2018 年以降は後継の JupyterLab も登場し、現在は両者が併存しています。新規ユーザは JupyterLab、既存ノートブックは Notebook という棲み分けが一般的です。

インストール

# 仮想環境を作るのが推奨
python -m venv .venv
source .venv/bin/activate     # Windows: .venv\Scripts\activate

# Jupyter Notebook(クラシック)
pip install notebook

# JupyterLab(後継)
pip install jupyterlab

# データ分析三種の神器も一緒に
pip install numpy pandas matplotlib seaborn

# 機械学習も
pip install scikit-learn

# Anaconda を使う場合は最初から全部入っている
# https://www.anaconda.com/download

起動

# Jupyter Notebook
jupyter notebook
# → ブラウザが自動で開き http://localhost:8888/ にアクセス

# JupyterLab
jupyter lab

# 特定ディレクトリで起動
cd ~/work/myproject
jupyter lab

# ポート指定
jupyter lab --port=9999

# トークン無しで起動(社内サーバ等。本番は非推奨)
jupyter lab --no-browser --ip=0.0.0.0 --NotebookApp.token='' --NotebookApp.password=''

セルの種類

種類用途
Code実行可能なコードimport pandas as pd
Markdown文書(見出し・数式・画像)# 見出し / $E=mc^2$
Raw変換対象外のプレーンテキストnbconvert で出力されない LaTeX 等

主要なキーボードショートカット

モードキー動作
編集中Shift+Enter実行して次セルへ
編集中Ctrl+Enter実行(セル留まる)
編集中Alt+Enter実行して下にセル挿入
編集中Escコマンドモードへ
コマンドA上にセル挿入
コマンドB下にセル挿入
コマンドDDセル削除
コマンドMMarkdown に変換
コマンドYCode に変換
コマンドZセル削除の取消
コマンドShift+M下のセルとマージ
共通Tab補完
共通Shift+Tab関数のシグネチャ表示

マジックコマンド

# 1. 行マジック(%)
%matplotlib inline       # グラフをセル内に表示
%time sum(range(10**6))  # 1 回の実行時間
%timeit sum(range(10**6))# 複数回平均
%who                     # 定義済変数一覧
%pwd                     # カレントディレクトリ
%ls                      # ファイル一覧
%env                     # 環境変数

# 2. セルマジック(%%)
%%time
# このセル全体の実行時間
total = 0
for i in range(10**6):
    total += i

# 3. シェル実行
!pip install requests
!ls -la
file_count = !ls | wc -l

# 4. HTML / JavaScript 表示
%%html

Hello

# 5. ファイル書込 %%writefile hello.py print("Hello from file")

kernel の操作

kernel はコードを実行するバックエンドプロセス。Python 環境を切り替えるなら kernel を追加します:

# 現在の kernel 一覧
jupyter kernelspec list

# 別の venv を kernel として登録
source ~/other-env/bin/activate
pip install ipykernel
python -m ipykernel install --user --name=other-env --display-name="Python (other-env)"

# kernel 削除
jupyter kernelspec remove other-env

# UI からは「Kernel → Change kernel」で切替可能

HTML / PDF 出力(nbconvert)

# HTML(最も簡単)
jupyter nbconvert --to html notebook.ipynb
# → notebook.html

# PDF(LaTeX 必須)
jupyter nbconvert --to pdf notebook.ipynb

# Python スクリプトに変換
jupyter nbconvert --to script notebook.ipynb
# → notebook.py

# Markdown
jupyter nbconvert --to markdown notebook.ipynb

# スライド(reveal.js)
jupyter nbconvert --to slides notebook.ipynb --post serve

# 入力セルを隠してアウトプットのみ
jupyter nbconvert --to html --no-input notebook.ipynb

Google Colab との比較

項目Jupyter (ローカル)Google Colab
環境構築pip install 必要不要(ブラウザだけ)
GPU/TPU自分の PC 次第無料で T4 GPU 利用可(時間制限あり)
パッケージ追加仮想環境で永続!pip install。セッション終了で消える
ファイル管理ローカルGoogle Drive / GitHub 連携
共有nbviewer / GitHubURL 共有・Google Docs ライク
長時間実行制限なし無料版は 12 時間で切断
機密データローカルで安全Google にアップロードされる

運用 Tips

  • セル番号In [3]:)は実行順を示す。順番が飛んでいると再現性が崩れる → Run All でリセット推奨
  • Git に commit する前に Kernel → Restart & Clear Output出力をクリアするとレビュー差分がきれい
  • 巨大データを print(df) しない(ファイルが MB 級になる)。df.head() + df.shape で抑える
  • 長期保守するなら .ipynb ではなく .py + jupytext でテキスト管理
  • 本番運用で notebook を実行するなら papermill(パラメータ注入・自動実行)

FAQ

Q: Jupyter Notebook と JupyterLab、どちらを選ぶ?
A: 新規なら JupyterLab。タブ式 UI・ファイルブラウザ・拡張機能が豊富。Notebook クラシックも引き続き使えるので、好みで OK。

Q: pip install したのに import できない
A: kernel が別の Python を見ている可能性。!which python / !pip install をセル内で実行してkernel と同じ Python に入れる

Q: 公開する前にアウトプットを消したい
A: メニューの Kernel → Restart Kernel and Clear All Outputs。または nbstripout を git pre-commit hook に。