LoginSignup
24

More than 1 year has passed since last update.

Google Colabでpip installしたものを消えないようにする

Posted at

n番煎じですが,毎回!pip install hogeをやるのはうっとうしく, コードが汚くなるので,パッケージはGoogle Driveにダウンロードしそれを読み込みに行くようにする.

メリット

  • コードがきれいになる
  • 時間短縮
  • プロジェクトごとにmy-site-packages(名前はなんでもよい)を作成することで,パッケージ管理(に近い何か)ができる

デメリット

  • パッケージの読み込みが自分のGoogle Driveのディレクトリ構成に依存するので,コードの可搬性が下がる
    • 共同研究者にコードを共有する際などにやや面倒かも

手順

(1). Google Driveにコードを置くプロジェクトディレクトリを作成し,その配下にmy-site-packagesなるディレクトリ(パッケージ置き場)を作成

(2). いつものコードを.ipynbファイルに書いて,Google Driveをマウント

# Google Colabでの処理
from google.colab import drive
drive.mount('/content/gdrive')

ついでに,先のmy-site-packagesのパスを変数に入れておく.

package_path = '/content/gdrive/MyDrive/Colab\ Notebooks/<dir_name>/my-site-packages/'
package_path_str = '/content/gdrive/MyDrive/Colab Notebooks/<dir_name>/my-site-packages/'

(3). pip install する際に,--target (-t)オプションで,インストール先をmy-site-packagesに指定する.

!pip install <package_name> -t $package_path

(4). importする際に,sys.appendする

この際,sys.pathにはスペースをエスケープしていないものを引数として与える.

import sys
sys.path.append(package_path_str)  

(5). あとは普通にimportすればよい

参照

  1. Install pip on Google Colab / Drive: This won't go away😃

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
24