Windows 10でJulia専用のPython仮想環境を作る
Juliaでは、Pythonを呼び出して使うことができます。しかし、何も考えずに使おうとするとMinicondaのPython 2.7がインストールされてしまいます(2018/02/01現在)。
そこで、Anacondaで作ったJulia専用の仮想環境を作って、その中でJulia用のPythonパッケージ管理をしようという話です。
以下のような人を対象としています。
Anacondaをダウンロードしてインストール
既にAnacondaをインストールしている人は読み飛ばしてください。
以下からWindows用のAnacondaインストーラをダウンロードしてインストールします。 https://www.anaconda.com/download/
インストールの仕方は公式のこちらで確認できます。 https://docs.anaconda.com/anaconda/install/windows
インストールの際、AnacondaのPythonをPathへ追加するかどうかのチェック画面が現れます。
WindowsにはデフォルトでPythonが入っていないので追加しちゃってよいでしょう。
両方にチェックを入れときましょう。
(嫌な人はAnacondaを起動するときは、スタートメニューからAnaconda プロンプトを起動してください。)
Julia専用のAnaconda仮想環境の構築
コマンドプロンプト(またはAnacondaプロンプト)にて、以下のように入力して仮想環境を作ります。
ついでにjupyterも一緒にインストールしておきましょう。
C:\Users\username>conda create -n env_name python=3 jupyter
env_nameに自分の好きな仮想環境名を入れてください。
次に、activateして仮想環境の中に入ります。
また、Juliaで使いそうなパッケージをインストールしておきます。
C:\Users\username>activate env_name C:\Users\username>conda install numpy pandas scipy matplotlib
念のため、Jupyter notebookのカーネルに作った仮想環境を追加しておく。
(多分やらなくても良い)
※必ず仮想環境に入った状態で行ってください。
C:\Users\username>ipython kernel install --user --name=env_name --display-name=env_name
仮想環境のPythonのパスを確認
C:\Users\username>where python C:\Users\username\Anaconda3\envs\env_name\python.exe C:\Users\username\Anaconda3\python.exe
仮想環境とAnacondaインストール時に入るPythonのパスが表示されます。
envsの下にあるpythonが仮想環境のpythonなのでパスをコピーしておきます。
仮想環境から抜けて、jupyterのパスを取得します。
C:\Users\username>deactivate C:\Users\username>where jupyter C:\Users\username\Anaconda3\Scripts\jupyter.exe
表示されたパスを環境変数JUPYTERへ追加します。
コントロールパネル>システムとセキュリティ>システム>システムの詳細設定>環境変数(N)
で環境変数の設定画面に行けます。
上段のユーザー環境変数に新規でJUPYTERという名前で環境変数を作成し、jupyterのパスを入力します。
Juliaが勝手に環境変数を読んでjupyterを見つけてくれます。
jupyter.exeまで入力しないと無視されるので注意
以上でPython側の準備は終わりです。
Juliaをインストール
公式からWindows用のJuliaをダウンロードしてインストール。
インストール場所はどこでも良いです。
https://julialang.org/downloads/
このままだとPCがjuliaを見つけられず
C:\Users\username>julia
と入力しても何も起きません。パスを教えてやる必要があります。
インストールしたフォルダ/binをユーザー環境変数Pathへ追加。
(julia.exeがあるのでわかりやすいと思います)
juliaのパッケージをインストールするフォルダの場所をデフォルトから変えたい場合は、環境変数JULIA_PKGDIRを作って好きなパスを入力して下さい。
追加の仕方は環境変数JUPYTERの設定の時と同じです。
次に、コマンドプロンプトを立ち上げなおしてjuliaを起動します。
まず初めにJuliaの環境変数を書き換えて、先ほど作った仮想環境のPythonの場所を教えておきます。
julia>ENV["PYTHON"] = "C:/Users/userneme/Anaconda3/envs/env_name/python.exe"
juliaの設定を初期化します。
PyPlotを入れるとPyCallが一緒についてきて、その際に仮想環境のpythonを見つけて使ってくれるようになります。
julia>Pkg.init() julia>Pkg.add("IJulia") julia>Pkg.add("PyPlot") julia>using PyCall
以上で仮想環境のpythonを使うことができました。
まとめ
- 環境が汚れなくてハッピー!
- Julia自体でも仮想環境を作れたら楽。