【Python】M1/M2 MacにAnacondaをインストールする(pyenv編)

7 min

こんにちは。ナミレリです。みなさん、M1/M2のMacでPythonは使っていますか?
M1やM2などのApple Siliconを搭載したMacにAnacondaをインストールする方法を紹介します。Anaconda環境の構築はいろいろありますが、今回はpyenvAnacondaをインストールしていきます。

この記事はこんな人にオススメ

  • M1/M2のMacでAnacondaは使えるの?
  • Anaconda以外にも複数のPythonのバージョンを使いたい
  • M1/M2のMacでAnacondaを手軽に使ってみたい
この記事のMac環境
  • M2 MacBook Air 13.6 インチ
  • macOS Ventura 13.1
  • pyenv 2.3.9
  • anaconda3-2022.10

経緯

普段はpyenvminiforgeで環境構築をしています。miniforgeは「Python + conda + 最小限のパッケージ」からなるディストリビューションでインストールされるパッケージは必要最小限なところが気に入っている点と、Apple Silicon(M1やM2)のMacのサポートに重点を置いている点が気に入っています。なお、デフォルトのリポジトリはconda-forgeに設定されています。

2020年11月にM1のMacが発売されましたが、Apple Silliconへの対応が早かったのがminiforgeでした。M1 MacでPython環境を構築する選択肢としてminiforgeしかありませんでした。

2022年5月にAnacondaはこのリリースにある通りM1 MacのネイティブARM64をサポートすると発表しました。2022年12月現在でpyenv install --listを見るとanaconda3-2022.10があるので、Apple SilliconのMacで試してみようと思いました。もちろん個人かつ非商用目的による趣味の範囲での使用です。

Anacondaのライセンス

Anacondaのラインセンスには注意が必要です。

詳しくは公式Anacondaの利用規約を確認する必要があります。

個人利用でかつ商用目的でなければ問題ないのと、Anacondaの公式リポジトリを利用しなければ問題なさそうです。どのリポジトリを利用すればOKなのかが重要になりますが、conda-forgeに設定しておけば問題ななさそうです。

ライセンスについて下の記事でわかりやすくまとめていただいており参考にさせていただきました。

勉強や趣味の個人利用でAnacondaを使い(非商用利用)、その場合でもリポジトリをconda-forgeに設定変更しておけばまったく問題はないです。

Anacondaを使わない選択肢

前述のライセンスの問題もありますので、商用で利用する場合はAnacondaを使わずminicondaminiforgeを使うという選択肢もあり。minicondaの場合はリポジトリをconda-forgeに設定する必要はあります。miniforgeのリポジトリはデフォルトでconda-forgeに設定されています。

jupyter labを使いたい場合はconda-forgeのリポジトリからcondaコマンドで簡単にインストールできます。例えば下記のコマンドで仮想環境「jupyterlab」にインストールすればすぐに使えます。

miniforgeがインストールされている状態でjupyterlabをインストールする例


conda create -n jupyterlab
conda activate jupyterlab
conda install jupyterlab

 jupyter-labで起動します。


jupyter-lab

pandasnumpyなどの必要なパッケージは個別にインストールする必要がありますが、何の問題もなくcondaでインストールできるのでminicondaminiforgeを使う選択肢も良いと思います。

Anacondaのインストール

それではM1/M2のApple SilliconのMacにpyenvanacondaをインストールします。brewなどでpyenvがインストールされていることが前提です。

pyenvanaconda3-2022.05のインストール

pyenvのバージョンを以下のコマンドで確認しておきます。


pyenv --version
pyenv 2.3.8

2022年12月現在で最新のanaconda3-2022.05をインストールします。


pyenv install anaconda3-2022.05
・・・
Installing Anaconda3-2022.05-MacOSX-arm64...
Installed Anaconda3-2022.05-MacOSX-arm64 to /Users/u/.pyenv/versions/anaconda3-2022.05
・・・

~/.pyenv/versions/anaconda3-2022.05にインストールされました。

anacondaの初期設定

pyenv globalanacondaを指定し、conda init zshで初期化を行います。


pyenv global anaconda3-2022.05
conda init zsh
・・・
modified      /home/u/.zshrc
==> For changes to take effect, close and re-open your current shell. <==
source ~/.zshrc

conda listでインストール済のパッケージを表示すると約350個のパッケージがインストールされていることを確認できます。

pyenv versionsで有効になっていることを確認します。


pyenv versions 
  system
* anaconda3-2022.05 (set by /Users/u/.pyenv/version)

Udemyのデータサイエンスコース

Pythonのデータサイエンスを学びたい方におすすめ!

講座買い切り型で、視聴期限なし。自分のペースで学べる。

現場で活躍されているプロが教えるコースを選べます。

リポジトリをconda-forgeに設定する

まずは、conda-forgeのチャンネルを下のコマンドで追加します。


conda config --add channels conda-forge

~/.condarcに反映されたことを確認します。(defaultsチャンネルが残っている)


cat ~/.condarc
channels:
  - conda-forge
  - defaults

conda config --show channelsでも確認します。(defaultsチャンネルが残っている)


conda config --show channels
channels:
  - conda-forge
  - defaults

残っていたdefaultsチャンネルを削除して、チャンネルを確認します。


conda config --remove channels defaults
conda config --show channels
channels:
  - conda-forge

~/.condarcからもdefaultsチャンネルは削除されています。


cat ~/.condarc
channels:
  - conda-forge

これでAnacondaの公式リポジトリ(チャンネル)は使用しない設定となりました。

condaのアップデート、パッケージのアップデート

続いてconda update condaでcondaをアップデートしておきます。この時にダウンロードするリポジトリがconda-forgeであることを目視しておきましょう。


conda update conda
・・・
Preparing transaction: done
Verifying transaction: done
Executing transaction: done

conda update --allでインストール済パッケージのアップデートをしておきます。同じくダウンロードするリポジトリがconda-forgeであることを目視しておきましょう。


conda update --all
・・・
Preparing transaction: done
Verifying transaction: done
Executing transaction: done

anacondaのアンインストール

pyenvでをインストールしたanacondaをアンインストールする方法を記載します。アンインストールしたい場合は参考にしてください。


conda init --reverse --dry-run
conda init --reverse
CONDA_BASE_ENVIRONMENT=$(conda info --base)
echo ${CONDA_BASE_ENVIRONMENT}
/Users/u/.pyenv/versions/anaconda3-2022.05
rm -rf ${CONDA_BASE_ENVIRONMENT}
rm -f "${HOME}/.condarc"
rm ~/.pyenv/version


vi ~/.zshrc
# .zshrcのcondaの部分を削除します。
# >>> conda initialize >>>
# ↑↓これに囲まれた行を削除します
# <<< conda initialize <<<

覚えておきたいcondaコマンド

condaには便利なたくさんのコマンドがあります。conda --helpで詳しく見ることができます。conda install --helpconda list --helpconda remove --helpのように各コマンドのヘルプも確認することができます。

ここでは最低限覚えておきたいcondaコマンドを紹介します。

condaコマンドをzshで補完する

conda環境の自動起動

ターミナルを起動した時にcondaの自動起動をオフに設定する場合は下記のコマンドでauto_activate_basefalseに指定します。

自動起動をオフにする


conda config --set auto_activate_base false

~/.condarcに追加されたことを確認します。


cat ~/.condarc
channels:
  - conda-forge
auto_activate_base: false

condaの自動起動をオンにする場合は下記のコマンドです。

自動起動をオンにする


conda config --set auto_activate_base true

conda環境をアクティブ、非アクティブにする

conda環境をアクティブにするにはconda activateの後に環境名を指定します。環境名を指定しない場合はデフォルトのbaseという環境がアクティブになります。

base環境をアクティブにする


conda activate

アクティブにしたconda環境名がプロンプトに表示されます。

非アクティブにするにはconda deactivateです。

base環境を非アクティブにする


conda deactivate

conda環境の作成と削除

condaの仮想環境を作成するにはconda createコマンドを使います。-nオプションの後に作成する環境名を指定します。

conda環境の作成


conda create -n <環境名>

conda環境を削除するにはconda removeを使います。-nオプションの後に削除する環境名を指定し--allを付けます。

conda環境の削除


conda remove -n <環境名> --all

condaパッケージの検索

インストールしたいパッケージを検索するにはconda searchでパッケージ名を指定し検索します。Channelは先程指定したconda-forgeとなっています。

condaパッケージの検索


conda search numpy
Loading channels: done
# Name        Version           Build  Channel
numpy         1.23.5  py39hefdcf20_0  conda-forge         
numpy         1.24.0 py310h5d7c261_0  conda-forge         
numpy         1.24.0 py311ha92fb03_0  conda-forge         
numpy         1.24.0  py38h09ac2d9_0  conda-forge         
numpy         1.24.0  py39hefdcf20_0  conda-forge 

condaパッケージのインストールとアンインストール

パッケージをインストールするにはconda installでパッケージ名を指定します。

condaパッケージのインストール


conda install numpy

condaパッケージのアンインストール


conda uninstall numpy

インストール済のパッケージ一覧の表示

condaでインストールしたパッケージを表示するコマンドはconda listです。-nで仮想環境名を指定しその仮想環境でcondaでインストールしたパッケージを表示することもできます。

インストール済パッケージの一覧表示


conda list

ある仮想環境におけるインストール済パッケージの一覧表示


conda list -n <環境名>
 

conda環境の表示

conda環境詳細を表示するにはconda infoです。


conda info

condaの仮想環境の一覧を表示するにはconda info -eです。


conda info -e

Udemyのデータサイエンスコース

Pythonのデータサイエンスを学びたい方におすすめ!

講座買い切り型で、視聴期限なし。自分のペースで学べる。

現場で活躍されているプロが教えるコースを選べます。

参考

参考にさせていただいたサイトです。

最後に

最後まで読んでいただきありがとうございます。今回の【Python】M1/M2 MacにAnacondaをインストールする(pyenv編)はいかがでしたでしょうか。M1やM2などのApple Siliconを搭載したMacにpyenvanacodaのインストール方法を紹介しました。Anacondaを使う場合はライセンスを確認し、みなさんのMacライフを便利にしていただけたらと思います。

使ってほしい至極のキーボード

最高の打鍵感。スコスコと静かに速く、そして気持ち良くタイピングができます。もうタイピングが楽しくてどうしようもなくなります。つや消しの高級感もたまりません。サラサラしていて触り心地も最高です。

PFU キーボード HHKB Professional HYBRID Type-S 日本語配列/雪(無刻印)

定番おすすめ記事

M1、M2のMacでPythonの開発環境を構築することや、分野別のライブラリのインストール方法を下記の記事でまとめています。ぜひご覧ください。

Udemyの人工知能と機械学習講座

みんなのAI講座 ゼロからPythonで学ぶ人工知能と機械学習 【2023年最新版】

講座買い切り型で、視聴期限なし。自分のペースで学べる。

現場で活躍されているプロが教えるコースを選べます。

Udemyの人工知能と深層学習の講座

ディープラーニング : Pythonでゼロから構築し学ぶ人工知能(AI)と深層学習の原理

講座買い切り型で、視聴期限なし。自分のペースで学べる。

現場で活躍されているプロが教えるコースを選べます。

カテゴリー:
関連記事