スキップしてメイン コンテンツに移動

Anaconda NavigatorでConda環境設定ファイルを読み込んで、仮想環境を作成する

科学計算のためにPythonを実施する際にとても便利な環境がAnacondaです。多くの方々が利用しているかと思います。しかし、せっかく作成した環境にどんどんとパッケージをインストール、アップデートしていってしまうと、依存関係がわからなくなってしまい、他の計算機で環境を再現できなくなってしまうこともあります。

そうなることを防ぐために、環境設定ファイルをしっかりと作成・管理して、だれでもどこでも仮想環境を再現できるようにしましょう。本記事では、初心者でも利用できるようにCUIではなくGUIであるAnacnoda Navigatorで環境設定ファイルから仮想環境を作成する方法を紹介します。

1. 環境設定ファイル(yamlファイル)を用意する

環境設定ファイル「env.yml」の記述例を以下に示します。ファイル名は任意で大丈夫ですが、拡張子はymlとしておきましょう。

name: test-env
channels:
  - defaults
  - gurobi
dependencies:
  - python=3.8
  - gurobi
  - spyder
  - pandas
  - openpyxl

"name"は仮想環境の名前です。この環境を使う目的など、わかりやすい名前をつけましょう。日本語だと上手に反映できない場合がありますので、基本、アルファベットでつけましょう。

"channels"ではパッケージのダウンロード元となるチャンネルを指定します。多くのパッケージは”defaults”が書いてあれば問題ありませんが、特定のパッケージは特別にチャンネルを指定する必要があります。使用したいパッケージがどこからダウンロードできるか、確認しておきましょう。

”dependencies”は、この環境にインストールしたいパッケージを指定します。基本的に最新版をインストールしますが、バージョンを指定したい場合には、パッケージ名の後ろに"="をつけて、バージョンを指定しましょう。

この環境設定ファイルを作成したプログラミング毎に管理するようにしましょう。プログラミング1つに対して1環境です。プログラミングをGitで管理している場合は、環境設定ファイルをGitの追跡対象に追加することで、自然に一緒に管理することができます。

2. 環境設定ファイルをインポートする

以降、お使いのPCには既にAnacondaがインストールされている、という前提で話を進めます。Anaconda と同時にイントールされるAnaconoda Navigatorを起動しましょう。その後は下記の手順で作業を進めます。下記画像の赤丸の番号が、下記の箇条書きの番号と一致しています。

①. 「Environments」を選択する。
②. 「Import」を選択する。
③. 「Local drive」を選択肢、環境設定ファイルを設定する(環境名を変更したい場合、「Name」を編集する)。
④. 「Import」を選択する。


これで、新たな仮想環境の作成(パッケージ群のインストール等)が開始されます。しばらく時間がかかりますが、その後、仮想環境一覧に新しい環境が追加されます。

3. 新しいパッケージを環境にインストールしたくなったら

Anacondaの仮想環境にデフォルトで入っているパッケージ、Condaを使ってインストールします。

conda install パッケージ名

この後、忘れずに環境設定ファイルの”dependencies”にインストールしたパッケージを追記しましょう。追記を忘れてしまうと、他の計算機での環境再現ができなくなってしまいます。

コメント

このブログの人気の投稿

Sourcetreeを使って、特定のブランチやタグをローカルに再現する方法 - フェッチ(fetch)を使おう -

今や、プログラミング開発に欠かせない存在となったGit。上司や同僚から「修正版をブランチ"devlop"にプッシュしたから、それを反映させてね」「安定版はタグ”v1.2”だから、よろしくね」と言われることもあるでしょう。その時に「どうやってブランチやタグって変えたらいいかわからない」「そもそも言われたブランチやタグが見当たらないんだけど…」となったら、とても困ってしまいます。そんなときにどうしたらいいか、本記事では Sourcetree を使用している環境を想定して、おすすめの手順を紹介します。環境によって具体的な操作は異なるものの、手順自体は一緒です。基本的には、 フェッチ(fetch)をしてリモートリポジトリをちゃんと確認 すればよいのです。 1. コミットしていないファイルをなくそう まず、Sourcetreeのコミット一覧に「コミットされていない変更があります」とあるかどうか確認します(下記図赤下線参照)。「コミット」の箇所に青マークでコミットされてないファイル数も表示されます(下記図赤枠参照)。その変更をコミットするか、破棄するかを行い、コミットされていない変更がない、きれいな状態にしましょう。そうしないと、後の作業中にエラー等が発生して進まなくなってしまいます。 2. フェッチしよう フェッチとは、 リモートリポジトリの最新の履歴の取得だけを行う 操作です。これによって、自分から見えていなかったブランチ・タグが見えるようになります。ブランチへのマージが伴うプッシュやプルと異なり、単に履歴を取得するだけなので、意図しないコミットが発生しません。安心して実施しましょう。Sourcetreeでは下記図赤枠部分をクリックすれば、フェッチを行うことができます。 その際出てくるポップアップで「すべてのリモートからフェッチ」「全てのタグを取得」をチェックしてください(下図赤下線参照)。 3. 目的のブランチ・タグを見つけよう 目的のブランチ・タグを見つけるのに便利なのが、Sourcetreeの左側領域にある「ブランチ」「タグ」「リモート」「スタッシュ」です。目的のブランチを探したい場合は「リモート」をクリックして現れる「origin」をさらにクリックしましょう。これでリモート上にあるブランチの一覧を見ることができます。タグの場合は「タグ」をクリック

GitHubのプライベートリポジトリからクローンできてもプッシュできないときの対処法 - Write権限の有無を確認しよう -

 以前、 SourceTreeを使って、GitHubのプライベートリポジトリにアクセスする方法 を記事にしました。その際、プライベートリポジトリからクローンできても、プッシュできない!という現象に遭遇するときがあります。下記のように、”そんなリポジトリは存在しないよ”というエラーが表示されます。 remote: Repository not found. もし、そのリポジトリがOrganaizationに属するものならば、 あなたのアカウントの権限が”Read”のみで、”Write”になっていない 可能性があります。権限に関してOrganaizationの管理者に確認してもらいましょう。 管理者がどういうルールで権限を決定しているのかによって、対応が変わるかと思います。一番手っ取り早い対応は、全てのメンバーのデフォルト権限を”Write”に変えてしまえばよいでしょう。Organaizationのページの右上にある「Settings」をクリックし、左に表示されるメニューから「Member privileges」を選択します。すると、左下のような画面が表示されますので、赤枠で囲っている「Base permissions」のプルダウン部分を"Write"に変更してください。 その他に、リポジトリ毎にアクセスできるメンバーを管理したい場合もあるかと思います。その際にはリポジトリの「Settings」→「Manage access」を選択し、設定等を変更してください。

SourcetreeでGitHubのプライベートリポジトリをクローンする

Sourcetree は、初心者でも操作しやすいgitのGUIツールです。基本無料のソフトなので、あらゆる人が導入・利用しやすいという利点を持ちます。ですが、GitHubで非公開、つまりプライベートのリポジトリを取り扱う場合には、初期設定に一工夫が必要です。 本記事で紹介する設定の流れは以下の通りです。前提として、1)GitHubのアカウントとプライベートリポジトリを既に所有しているが、2)Sourcetreeを自身のPCにまだインストールしていない状態を想定しています。 GitHubのPersonal access tokenを作成する Sourcetreeを自身のPCにインストールする SourcetreeにGitHubのアカウントを登録する プライベートリポジトリをクローンする 今回はPersonal access tokenという手法を用います。秘密鍵や公開鍵が必要なSSH接続とは異なり、アカウント名とパスワードのみで認証できます。そのため、アカウント管理がより重要となりますので、 2段階認証 でより強力なアカウント保護をおこなうことをお勧めします。また、本記事で紹介するのはWindowsでの利用です。Macでもほぼ同じ流れになるかと思いますが、試してはいませんのでご了承ください。 1. GitHubのPersonal access tokenを作成する GitHubのPersonal access tokenとは、GitHub API またはコマンドラインを使用するときに GitHub への認証でパスワードの代わりに使用できる機能です。このトークンを自身のGitHubアカウントで作成することで、Sourcetreeからプライベートリポジトリにアクセスすることができるようになります。具体的な作り方は下記のGitHub公式ページををご参考ください。 Personal access tokenの作成方法: https://docs.github.com/ja/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token ポイントは手順8に書かれているS