0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VSCode上でJupyterNotebookを動かす方法

Posted at

はじめに

JupyterNotebookやGoogleColaboって便利ですよね。
ライブラリの管理も楽で簡単に環境構築できるし!
でも普段から使い慣れたエディタでソースコードを書いてGitに上げたりしたいと思いませんか?
今回はPythonの仮想環境の作成方法を通じてVSCode上でJupyterNotebookを動かす方法を記していきます!

仮想環境とは

まず仮想環境とは何なのでしょうか。
仮想環境は、特定のプロジェクトに必要なライブラリやパッケージを他のプロジェクトと分離して管理するためのものです。これにより、異なるプロジェクト間での依存関係の衝突を避けることができます。

具体的なメリット

  1. プロジェクト間の依存関係の分離:異なるプロジェクトで異なるバージョンのライブラリが必要な場合、仮想環境を使うことでコンフリクトを避けられます。
  2. システム全体への影響を最小限に:仮想環境内でのパッケージのインストールや更新が、システム全体のPython環境に影響を与えません。
  3. クリーンな開発環境:新しいプロジェクトを始める際に、必要最小限のパッケージだけをインストールした環境を作れます。
  4. 再現性の向上:プロジェクトの環境を他の人と共有したり、別のマシンで再現したりするのが容易になります。
  5. 実験的な変更の安全性:新しいライブラリやバージョンを試す際、メインの環境を壊すリスクなく実験できます。

仮想環境の作り方(初期作成の方法)

ローカル環境でJupyter NotebookをVSCodeと連携して使用する方法を、Anacondaを使わずに構築する手順をご説明します。以下の手順で進めていきましょう:

  1. Pythonのインストール:
    まず、公式サイトから最新版のPythonをダウンロードしてインストールします。

  2. プロジェクトディレクトリに移動:

    cd path/to/your/project
    
  3. 仮想環境の作成:
    コマンドプロンプトまたはターミナルで以下のコマンドを実行します。

    python -m venv Jupyter_Sample
    

    Jupyter_Sampleは任意の環境名に変更可能です。

  4. 仮想環境の有効化:

    • Windows: Jupyter_Sample\Scripts\activate
    • macOS/Linux: source Jupyter_Sample/bin/activate
  5. 必要なパッケージのインストール:

    pip install jupyter notebook ipykernel
    
  6. Jupyter用のカーネルを作成:

    python -m ipykernel install --user --name=myenv
    
  7. VSCodeのインストールと設定:

    • VSCodeをインストールします。
    • Python拡張機能をインストールします。
    • Jupyter拡張機能をインストールします。
  8. VSCodeでJupyter Notebookを使用:

    • VSCodeを開き、.ipynb拡張子の新しいファイルを作成します。
    • 右上のカーネル選択から、先ほど作成したmyenvを選択します。

これで、AnacondaなしでJupyter NotebookをVSCodeで使用する環境が整いました。

.ipynbファイルの作成

.ipynbファイル(Jupyter Notebookファイル)の配置場所については、通常プロジェクトのルートディレクトリか、専用のサブディレクトリに置くのが一般的です。

以下のようなディレクトリ構造をお勧めします:

Jupyter_Sample/
│
├── notebooks/
│   ├── analysis.ipynb
│   └── data_exploration.ipynb
│
├── data/
│   └── (データファイルがあれば)
│
├── etc/
├── Include/
├── Lib/
├── Scripts/
├── share/
└── pyvenv.cfg

この構造では:

  1. notebooks/ ディレクトリを新たに作成し、そこに.ipynbファイルを配置します。
  2. 必要に応じて data/ ディレクトリを作成し、分析に使用するデータファイルを保存します。

このような構造にすることで、プロジェクトが整理され、ノートブックファイルと他のプロジェクトファイルを明確に分けることができます。

ただし、小規模なプロジェクトや個人的な実験の場合は、.ipynbファイルをプロジェクトのルートディレクトリ(Jupyter_Sample/)に直接配置しても問題ありません。

最終的には、あなたのワークフローと好みに合わせて配置を決めてください。重要なのは、一貫性を保ち、プロジェクトの構造が分かりやすくなるようにすることです。

サンプルコードを動かしてみよう

ここでmatplotlibを使ってグラフの描画を行うプログラムを作成してVSCode上でJupyterNotebookが動作するか実験してみましょう!
matplotlibを使用するための手順を説明します。

  1. まず、仮想環境を有効化します(まだしていない場合):

    source venv/bin/activate
    
  2. matplotlibをインストールします:

    pip install matplotlib
    

    この時のmatplotlibは作成したJupyter_Sample内でインストールされています。
    ローカル環境にはインストールされていません!

  3. Jupyter Notebookも必要なので、まだインストールしていない場合は:

    pip install jupyter
    
  4. .ipynbファイルを作成し、VSCodeで開きます。

  5. ノートブック内で以下のようなコードを書きます:

    import matplotlib.pyplot as plt
    import numpy as np
    
    # データの生成
    x = np.linspace(0, 10, 100)
    y = np.sin(x)
    
    # プロットの作成
    plt.figure(figsize=(10, 6))
    plt.plot(x, y)
    plt.title('Sine Wave')
    plt.xlabel('x')
    plt.ylabel('sin(x)')
    plt.grid(True)
    plt.show()
    
  6. このセルを実行すると、サイン波のグラフが表示されるはずです。

注意点:

  • VSCodeでJupyter Notebookを使用する場合、Pythonの拡張機能がインストールされていることを確認してください。
  • グラフが表示されない場合は、VSCodeの設定で "Plot output inline" が有効になっているか確認してください。

もし特定の種類のプロットや可視化について質問がある場合は、お知らせください。matplotlibは非常に多機能なライブラリなので、様々な種類のグラフや図を作成できます。

ライブラリの情報を保存する

ライブラリをrequirements.txtに保存します。
このファイルの作成と更新には以下のコマンドを実行していきます。

pip freeze > requirements.txt

そして作成、更新したファイルを環境に適用するにはライブラリをインストールする以下のコマンドを実行します。

pip install -r requirements.txt

ローカルで作った環境をGitで保存する

ここでは先ほど作成した環境をGitを通じて管理し、リモートに上げる方法をGitとGitHubを使って解説していきます。
GitHubとの連携にVSCodeの機能や拡張機能を使っていきます。
また、私が参考にしているサイトがあるので詳しくはそちらを見ながら連携を進めていってください。
ここではダイジェスト版としてコマンドやVSCodeの操作だけを載せておきます。

ローカルのGitに登録

git init
git config --local user.name 
git config --local user.email

git initでこのリポジトリでのgitコマンドを使えるようにしてユーザーネームとメールアドレスを登録します。
ここのnameは自分のユーザーネームでemailは登録するメールアドレスを入力します。

VSCodeの機能でコミットする

VSCodeのGitのアイコンから変更をステージしてコミットをします。

GitHubとの連携

ここまで来たら普通のGit、GitHubの連携のコマンドや操作で完了します。

  1. GitHubのNew Repositoryからリポジトリを作成する
  2. pushのコマンドをコピーして控えておく
  3. コマンドを実行してリモートとローカルを紐づける
  4. 連携完了

まとめ

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?