18
33

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

データサイエンス100本ノックをColaboratoryでやりたい

Last updated at Posted at 2020-06-17

データ分析の練習コンテンツ「データサイエンス100本ノック(構造化データ加工編)」がデータサイエンティスト協会から公開されました。
動かすにはDockerの操作が必要なので、手軽に始めて見たい方向けにColaboratoryで動かす方法を残しておきます。

1.データをダウンロードする

まずは適当なノートブックを作成してColaboratoryを開きましょう。
開いたら以下のコマンドを実行して、GoogleDrive上にデータをダウンロードします。

from google.colab import drive
drive.mount('/content/drive')

!git clone https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess.git 'drive/My Drive/100knocks-preprocess'

ドライブのマウントを初めて実行する方は、実行したセルの下に以下の表示が現れます。URLをクリックしてGoogleColaboratoryのDriveに対するアクセスを許可しましょう。
スクリーンショット 2020-06-17 9.45.24.png
最後に「このコードをコピーし、アプリケーションに切り替えて貼り付けてください。」と表示されるので、コピーしたコードを上記の「Enter your authorization code:」欄に貼り付けて実行しましょう。
マイドライブに戻ると「100knocks-preprocess」というフォルダが確認できると思います。
うまくいったら、このnotebookはもう使いません。

2.マイドライブからJupyter Notebookを開く

notebookファイルは以下のディレクトリに格納されています。
スクリーンショット 2020-06-17 10.04.05.png
preprocess_knock_Python.ipynb をGoogleColabratoryで開いてみましょう。

##3.動かしてみる
最初のセルをそのまま実行するとエラーになるので、ライブラリのインポートだけを実行したら以下のコードでデータを読み込みましょう

def get_df(filename):
  path = 'drive/My Drive/100knocks-preprocess/docker/work/data'
  return pd.read_csv(os.path.join(path, filename))

df_customer = get_df('customer.csv')
df_category = get_df('category.csv')
df_geocode = get_df('geocode.csv')
df_product = get_df('product.csv')
df_receipt = get_df('receipt.csv')
df_store = get_df('store.csv')

ちなみに、以下のフォルダ配下にこのコンテンツの狙いなどを説明したpdfファイルがあるので、取り組む前に読んでみると良さそうですね。
100knocks-preprocess/docker/dock

これで準備は完了です
時間を空けて実行するとDriveとの接続が切れてしまう事があるかもしれません。(ないかも...)その場合は再度以下のコードを実行するか、サイドバーからドライブをマウントして改めてデータを読み込みましょう。

from google.colab import drive
drive.mount('/content/drive')

###以上
この記事を書いておいてなんですが、Dockerでの環境構築もそんなに難しくないですし、できると役立つことも多いので、これを機会にチャレンジするのもいいと思います。Macでの構築方法はこちらの記事が良さそうです。環境が作れればSQLの練習もできますしね!

18
33
1

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
18
33

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?