だいぶ周回遅れ感はありますが(^^;)備忘録的に・・・
学習環境
私用PCのWindows11にPython3.11~3.13とVSCodeはインストールされている状態
やったこと
主な参考資料①を学習参考書として、pandas、Numpy、matplotlib、seaborn、scipyといったデータ分析(やその先の機械学習や深層学習)のためのライブラリ、Jupyter Notebookの使い方をざっくり学ぶ。なお環境構築めんどいという方は主な参考資料①の通りにやった方が安全かと思われます(^^;)
環境構築
1.Minicondaをインストールする
から、Windows用のインストーラーをダウンロードして、インストーラーに従いMinicondaをダウンロードした。なお、進めるにあたり以下の記事を参考にした。
※ @inahoo in ARアドバンストテクノロジ株式会社(ARI)さん 著
インストーラーに従ってインストールした際に(?)、なぜか元々PCのシステム環境変数として設定されていたPathの値が上書きされてしまったため、仮にJava等の他の言語も普段さわっている場合、事前にどこかに既存のPathを控えておき、Minicondaインストール後、以下のリンク先のように「;(セミコロン)」を使って複数Pathの値を設定し直す必要があると思われます。
https://qiita.com/hwatahik/items/d49642aa069792e0ae79
※『[備忘録] windows11 システム環境変数の設定に複数のPathを追加する』
@hwatahik(綿引) さん著
途中出てくるInstallation Typeは個人利用であれば「Just Me (recommended)」 で
:現在パソコンにサインインしている自分(個人)のアカウントでのみそのソフトを使えるようにインストールする設定
2.学習用のファイルを格納するためのフォルダーを作り、仮想環境を作る
Pythonを学びはじめた本当に当初は何も考えずに自分もガンガンPCに直接外部ライブラリをpip installしまくっていましたが(^^;)・・そのうちバージョン管理(≒各外部ライブラリが使えるためのPythonそのもののバージョンやライブラリのバージョン同士の制約条件)がクソめんどいせいで全然期待通りに動かないという事態に陥るため、仮想環境(≒プロジェクト間の各しきり)はちゃんと作りましょう
〇参考
@takahashikaito94 (Takahashi Kaito) さん著
例えば、
C:ドライブ
|
|---Python(フォルダ)
|----Project_A(フォルダ)
|
|----Project_B(フォルダ)
|
みたいなフォルダを作って、各Project_~フォルダをVScodeで開いて、powershell等で以下のコマンドを叩く
conda create -n virtual_env python
※同時にインストールするPythonのバージョンを指定する場合
conda create -n virtual_env python=3.xx
# xxはバージョンの数字
virtual_env は任意です。各プロジェクトに応じて変えてください
pythonのバージョンを前者のように指定しない場合、PCにインストールされている既存のものの中で利用可能なものが適当に選択される
途中
Proceed ([y]/n)?
#進めますか(はい/いいえ)
と聞かれたら「y」とEnterキーで進めてください。
なお実際にやってみて分かったのですが、Pythonの代表的な仮想環境である venv とは異なり、以下のように仮想環境を作る際に指定をしない限りCondaの仮想環境(≒「〇〇という外部ライブラリ・パッケージを△△というバージョンで入れました」みたいなファイルをまとめたもの) はプロジェクト内でなく
conda list
#以下の通り、Installしたパッケージの一覧を表示するコマンド
を叩いたときに現れる
#packages in environment at C:\Users\各ユーザー名\miniconda3\envs\先ほど決めた仮想環境名
の「at」以下
C:\Users\各ユーザー名\miniconda3\envs\先ほど決めた仮想環境名
にできます。※miniconda3以前は各個人によって変わる可能性あり
※venvの参考になるかもしれない筆者の拙著
※プロジェクト内にConda仮想環境を作りたい場合
conda create --prefix .\.conda python
#上記の「先ほど決めた仮想環境名」にあたるフォルダ「.conda」という名前でプロジェクト直下にできる
なお、後に示すが代わりにGithubで後々コードを管理する場合、「.conda」をpushする必要はない(そもそもめちゃくちゃ重いそうです(^^;))
以下、本Qiitaにおいて「先ほど決めた仮想環境名」は「Project_A」とします(^^;)
3.仮想環境を有効化する
conda activate Project_A
※「有効になっている Conda 仮想環境を終了し、一つ前の環境または base 環境に戻す」は
conda deactivate
4.VSCodeの画面でJupyter Notebookが使えるようにする
4.1 「Jupyter」をインストールする
自分はそもそもチョット調べるまでJupyter Notebookは勝手にVSCodeと同じようなIDEというかエディターだと思ってたんですが・・(^^;) pipとかでインストールできるものだったんですね。。。
※公式インストール
というわけで、仮想環境を有効化して、以下のコマンドを叩きます
conda install jupyter
※途中でもし
conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/main
conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/r
みたいなMiniconda(というかAnacondaの)利用規約を承認するか否かを聞かれたら承認する。
installが済んだら以下のコマンドで確認
jupyter --version
大丈夫なら以下の画像のようなメッセージが出ます
4.2 VSCodeの拡張機能「Jupyter」をインストールする
ここまでくれば後は
作ったファイルの拡張子を「.ipynb」にすると、そのファイルをVSCodeが勝手に読み取って、Jupyter Notebookの仕様に
なります。
※以下のMaterial Icon Themeという拡張機能の影響を自分のVSCodeは受けている可能性があるため、若干見た目が異なる可能性があります。
5.Jupyterの各セルにおいてPythonを実行するためのライブラリ ipykernelをインストールする
とりあえず、この時点で適当に作った「.ipynb」ファイルに
print("Hello World")
を実行しようとしたところ、入ってないと以下のようなメッセージが出たので、ほぼ実質的に必須のようです。
なお、エラーメッセージのコマンドをべた塗りせずとも、これまでの仮想環境に
conda install ipykernel
で ipykernelをインストールして、カーネルと呼ばれるもの(下画像の赤枠部分)を仮想環境のものに揃えて実行し直すと、無事出力されました。
6.Jupyter 以外のデータ分析に必要な外部ライブラリを入れ、env.yml(≒インストールしたパッケージ一覧を示すファイル)を作る
6.1 データ分析のためのいくつかのライブラリ
Jupyter NotebookはあくまでPythonの実行環境的なライブラリなので、主な参考資料①に従い、他に以下のもの仮想環境Project_Aに入れました(一部どれかに含まれているものもあります)
表形式のデータを高速かつ簡単に操作・分析 pandas
conda install pandas
大規模な多次元配列や行列の効率的な数値計算を行うための基礎ライブラリ Numpy
conda install numpy
静的、アニメーション、およびインタラクティブなグラフを2次元描画する Matplotlib
conda install matplotlib
統計グラフを少ないコードで描画できるデータ可視化ライブラリ Seaborn
conda install Seaborn
Pythonで科学技術計算や数値解析を行う SciPy
conda install scipy
6.2 env.ymlの作成
まだざっくりとしか眺めてないですが、venv環境におけるrequirements.txtやPoetry環境におけるproject.tomlと同じような働きをするようです。(チームなどで開発環境を統一などするときに外部ライブラリ・パッケージを一括取得する際に使う一覧のようなファイル。Githubにはこれを.condaの代わりにpushするっぽい)
以下のコマンドをpowershellなどで叩くとできます。
conda env export --from-history > env.yml
作成時に以下のように「prefix」という項目の仮想環境のパスの一部として、各個人PCのユーザー名が表示されるので適宜prefix(の各個人PCユーザー名)は削除するべきかと思われます
主な参考資料
①『Python2年生 データ分析のしくみ』森 巧尚 (著) 、翔泳社





