BETA

データサイエンス100本ノック(構造化データ加工編)を試してみた

投稿日:2020-06-16
最終更新:2020-06-16

昨日(2020年6月15日)、データサイエンティスト協会より「データサイエンス100本ノック(構造化データ加工編)」がGitHubに無料公開されました(プレスリリースはこちら)。
少し試してみたので、セットアップ手順と触ってみた感想を書き留めておきます。なお、プレスリリースやGitHub内のガイド(こちら)にしっかりと書いてあるので、本記事ではかいつまんで説明します。

対象読者

  • Jupyter Notebookを扱える
  • 次の言語のいずれかを扱える
    • Python(NumPy、Pandas、scikit-learnなど)
    • R
    • SQL

本記事というより、100本ノックの対象者の前提として書いています。100本ノックの出題環境がJupyter Notebookであり、事前準備されているNotebookはPython、R、SQLに限られています。

準備するソフトウェア

Docker上で動作するので、Docker DesktopまたはDocker Toolboxが必要です。なお、gitはなくても構いません。
私は恥ずかしながらDockerを触ったことがなかったので、Docker Desktopのインストールから始めました。Mac OSで動かしたかったので、こちらの記事を参考にしました。といっても、私が実際に行ったのはダウンロードとインストールだけです。

セットアップ

  1. GitHubからデータをダウンロードします。URLはこちらです。
    gitがインストールされていればgit cloneを使ってもよいですが、zipファイルを直接ダウンロードしてもよいです。
  2. ターミナルで「100knocks-preprocess」ディレクトリに移動し、次のコマンドを実行します。
    docker-compose up -d --build
    しばらく待つと完了します(私の場合は10分弱)。

使い方

ブラウザでhttp://localhost:8888にアクセスします。
「work」ディレクトリ内の「preprocess_knock_###.ipynb」を開きます(言語はPython、R、SQLのいずれか)。

Jupyter Notebookに100ノック分の問題と回答用セルが用意されているので、粛々とノックを繰り返します(解答例もあります)。

あとはJupyter Notebookや各言語の扱いなので、本記事では割愛させていただきます。

終わり方(Dockerコンテナの止め方)

ターミナルで「100knocks-preprocess」ディレクトリ(「docker-compose.yml」があるディレクトリ)に移動します。
docker-compose stopコマンドを実行します。

停止後に再開する場合は、起動が必要です。起動にはdocker-compose startコマンド実行します。

終わりに

ここまでセットアップを中心に書きました。
最後に、触ってみて良かった点を感想として残しておきます。

  • 無償
  • 複数言語(Python、R、SQL)への対応
  • 解答例が勉強になる(「こんなに簡単な書き方が出来たのか…!」と参考になる)
  • Dockerコンテナでの配布(セットアップが楽。自身の環境を汚さずに済む)

これから構造化データ加工の基礎スキルを身につけたい方、久しぶりにデータ加工するに当たり感覚を取り戻したい方にオススメです。

ここまでお読みいただき、ありがとうございました!

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

hanaの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう