手元でJupyter NotebookでJuliaを実行して、ファイルを.ipynbで保存していたとします。
そのファイルをGoogle Colabでも実行してみたいことがありますよね?
そのやり方についての説明です。
基本的には
https://qiita.com/ueuema/items/ca1b326f5df10a4203bd
と同じです。補足説明がついているだけとなります。
追記:ローカルでの編集を全く必要としないで新しいノートブックをJuliaで始める方法を追記しました。
さらに追記:ローカルでの編集を全く必要としないで新しいノートブックをJuliaで始める方法のJuliaのバージョンを上げる方法を追記しました
Jupyter Notebookの用意
まず、自分で作ったJuliaのJupyter Notebookを用意します。
例えば、
https://github.com/cometscome/QM
のQM 01.ipynb
とかでしょうか。
そして、実行していたJuliaのカーネルを覚えておきます。
覚えていない人は(あるいは人のipynbファイルを使う人は)、.ipynbファイルを開いて、
"metadata": {
"kernelspec": {
"display_name": "Julia 1.1.0",
"language": "julia",
"name": "julia-1.1"
},
のnameを確認してください。これが入れるべきJuliaのバージョンです。なお、書き換えれば任意のバージョンにできます。
このファイルを、Google Colabでアップロードしてください。
新規ノートブックではできませんので注意してください。ローカルに保存していたipynbを使うことに注意です。
ダウンロードとインストール
次に、確認したJuliaのバージョンを入れます。1.1.0であれば、
!curl -sSL "https://julialang-s3.julialang.org/bin/linux/x64/1.1/julia-1.1.0-linux-x86_64.tar.gz" -o julia.tar.gz
!tar -xzf julia.tar.gz -C /usr --strip-components 1
!rm -rf julia.tar.gz*
!julia -e 'using Pkg; pkg"add IJulia"'
で入ります。このコマンドを実行する時点ではJuliaは入っていませんので、「Python」に接続しますのようなメッセージが出ますが、気にしなくて大丈夫です。
次に、
!jupyter kernelspec list
を実行します。ここに、先ほど確認したJuliaのnameが入っていればOKです。違っている場合はバージョンを間違えていれているかもしれません。
Juliaの有効化
次に、
「ランタイム」から、「ランタイムのタイプを変更」を選びます。
そして、「保存」を選びます。
すると、カーネルが一度切断され、Juliaのカーネルが接続されます。
あとは好きなだけJuliaを実行してください。
追記
以下のコードをテキストエディタで開き、test.ipynbみたいな形で保存してください。
その後、colabでそのファイルをアップロードし、書いてあることを実行すればJuliaが使えます。
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "test.ipynb",
"provenance": [],
"collapsed_sections": []
},
"kernelspec": {
"name": "julia-1.4",
"display_name": "julia-1.4"
}
},
"cells": [
{
"cell_type": "code",
"metadata": {
"id": "CN08w8uiICa8",
"colab_type": "code",
"colab": {}
},
"source": [
"!curl -sSL \"https://julialang-s3.julialang.org/bin/linux/x64/1.4/julia-1.4.1-linux-x86_64.tar.gz\" -o julia.tar.gz\n",
"!tar -xzf julia.tar.gz -C /usr --strip-components 1\n",
"!rm -rf julia.tar.gz*\n",
"!julia -e 'using Pkg; pkg\"add IJulia\"'"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"id": "sGOaN98-IZxj",
"colab_type": "text"
},
"source": [
"上記をshift+enterで実行後、「ランタイム」->「ランタイムのタイプを変更」->「保存」を押してください。"
]
},
{
"cell_type": "code",
"metadata": {
"id": "ls5Cl0hsIndc",
"colab_type": "code",
"colab": {}
},
"source": [
"versioninfo()"
],
"execution_count": 0,
"outputs": []
}
]
}
さらに追記
上のコードですが、Juliaのバージョンが1.4です。1.6.2にしたい場合には
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "test.ipynb",
"provenance": [],
"collapsed_sections": []
},
"kernelspec": {
"name": "julia-1.6",
"display_name": "julia-1.6"
}
},
"cells": [
{
"cell_type": "code",
"metadata": {
"id": "CN08w8uiICa8",
"colab_type": "code",
"colab": {}
},
"source": [
"!curl -sSL \"https://julialang-s3.julialang.org/bin/linux/x64/1.6/julia-1.6.2-linux-x86_64.tar.gz\" -o julia.tar.gz\n",
"!tar -xzf julia.tar.gz -C /usr --strip-components 1\n",
"!rm -rf julia.tar.gz*\n",
"!julia -e 'using Pkg; pkg\"add IJulia\"'"
],
"execution_count": 0,
"outputs": []
},
{
"cell_type": "markdown",
"metadata": {
"id": "sGOaN98-IZxj",
"colab_type": "text"
},
"source": [
"上記をshift+enterで実行後、「ランタイム」->「ランタイムのタイプを変更」->「保存」を押してください。"
]
},
{
"cell_type": "code",
"metadata": {
"id": "ls5Cl0hsIndc",
"colab_type": "code",
"colab": {}
},
"source": [
"versioninfo()"
],
"execution_count": 0,
"outputs": []
}
]
}
としてください。つまり、
"kernelspec": {
"name": "julia-1.6",
"display_name": "julia-1.6"
}
の部分と
"!curl -sSL \"https://julialang-s3.julialang.org/bin/linux/x64/1.6/julia-1.6.2-linux-x86_64.tar.gz\" -o julia.tar.gz\n",
の部分だけ変更すればバージョンを変更できます。このアドレスはJuliaのページでLinux用のファイルのダウンロードに使われているものです。