Shunya Ueta

社内でデータ分析結果を可視化・共有する際に Google Colab が便利

社内でデータ分析のレポートを書く際は Google Colab がとても便利な事に気がついた。

Google Bigquery でデータを抽出、Google Sheets で可視化

従来だと、自分がやっていた方法として、

  1. Google BQ などで分析対象結果のデータを抽出
  2. その結果を Google Spread Sheet として保存して、Google Sheets の機能で可視化。元の SQL のコードは、別シートを作ってそこに貼り付けておく。

利点としては、一度データを抽出した後は、Google Sheets で二次加工が簡単にできる点がとても便利。 また、 Google Sheet を共有後に Produc Manager が出したい数値を、Product Manager 自身が Google Sheets を元にさっと計算することもできる。

だが、二次加工が便利なのはいいが、大抵の可視化ってパターンが決まっているかつ二次加工の状況が必ず発生するわけではないので、SQL 取得とその可視化を一気通貫でできないかなと考えていた。

なにか良い方法無いかなと思っている矢先に、別のチームの同僚が、Google Colab を使って、BQ を dataframe として保存後 matplotlib で可視化しているのを見かけて、

求めていたのは…こ、これだ….

となり、速攻取り入れました。

良いと思ったところは積極的に真似する

Google Colab なら、データの取得・加工・可視化までを完結可能

Google Colab の利点を列挙しておく

マジックコマンドで、Google BQ の結果を dataframe として保存1したり、

# Save output in a variable `df`

%%bigquery --project yourprojectid df
SELECT
  COUNT(*) as total_rows
FROM `bigquery-public-data.samples.gsod`

また、#@title TITLE を Google Colab のセルの上部に入力すると、コードの部分は非表示になりスッキリした見かけにすることができる。2

#@title MODULE

import numpy as np
import pandas as np

と書くと

colab cell display no title

colab cell display title

こうなり、右側をクリックすると

colab cell display only title

コード部分を隠すこともできる。

この機能もレポートとして書く際には重宝しており、このセルで何をやっているかも docstring っぽく記述しておくことができる。

入力フォームも簡単に作れる2ようなので、可視化やレポート作成という本懐を見誤ることがなければ、やはり Notebook は便利。

二次加工が決まっている工程なら「Google Bigquery でデータを抽出、Google Sheets で可視化」の方法を取ればいいが、 サっと分析して可視化結果を共有したいときには、Google Colab が一択になった。

余談

@yohei_kikuta さんが、以前 Blog で「BigQuery を使って分析する際の tips」のシリーズを書いており、他者のワークフローを拝見するのは参考になるなと思い、自分も書いてみた。3

---

関連しているかもしれない記事


📮 📧 🐏: 記事への感想のおたよりをおまちしてます。 お気軽にお送りください。 メールアドレス入力があればメールで返信させていただきます。 もちろんお返事を希望せずに単なる感想だけでも大歓迎です。

このサイトの更新情報をRSSで配信しています。 お好きなフィードリーダーで購読してみてください。

このウェブサイトの運営や著者の活動を支援していただける方を募集しています。 もしよろしければ、Buy Me a Coffee からサポート(投げ銭)していただけると、著者の活動のモチベーションに繋がります✨

#dataanalysis #python #pandas #jupyter