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

社内でデータ分析のレポートを書く際は Google Colab がとても便利な事に気がついた。 Google Bigquery でデータを抽出、Google Sheets で可視化 従来だと、自分がやっていた方法として、 Google BQ などで分析対象結果のデータを抽出 その結果を 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 の利点を列挙しておく SQL のコード、データ抽出や可視化のロジックなどが Python で記述可能かつ、Google Colab で完結 matplotlib で可視化できるので、見やすく美しい図を作れる そしてそのコードは他のデータ分析でも再利用可能 pandas dataframe で Google BQ からデータを取得するので、Standard SQL だけでは難しい計算も pandas、 numpy や scipy などを使ってデータ加工が簡単にできるのも、便利 Google Sheets 同様、簡単に社内で共有できる Markdown も Google Colab 内で書けるので、凝った文章などもいれてレポートも書ける マジックコマンドで、Google BQ の結果を dataframe として保存1したり、...

5月 10, 2022 · Shunya Ueta
Spacy による NERの結果を Google Colab 上で可視化

Google Colab で Spacy による NER の結果を表示するには、jupyter 引数を True にする必要がある

自然言語処理のフレームワークの Spacy を使って、Google Colab 上で NER の可視化を行う際に 1 2 3 4 import spacy spacy.displacy.render(doc, style='ent') と実行しても 1 <div class="entities" style="line-height: 2.5; direction: ltr"></br>\n<mark class="entity" style="background: #bfe1d9; padding: 0.45em 0.6em; margin: 0 0.25em; line-height: 1; border-radius: 0.35em;">\n 2022年\n <span style="font-size: 0.8em; font-weight: bold; line-height: 1; border-radius: 0.35em; vertical-align: middle; margin-left: 0.5rem">Date</span>\n</mark>\n、\n<mark class="entity" style="background: #ddd; padding: 0.45em 0.6em; margin: 0 0.25em; line-height: 1; border-radius: 0.35em;">\n 日本人\n <span style="font-size: 0.8em; font-weight: bold; line-height: 1; border-radius: 0....

4月 8, 2022 · Shunya Ueta
DataFrame 内部にURLから参照して画像表示

Jupyter Notebook で画像をダウンロードすることなく、URLから参照してPandas DataFrame内部に表示させる

データ分析などをしていると、画像はダウンロードせずに特定の CDN (GCP なら GCS, AWS なら S3 など)で提供されている画像を参照して、 Jupyter Notebook 上で良い感じに表示させたいときがありませんか? 例えば、画像と説明文がペアになっているデータを画像自体はダウンロードせずに Jupyter 上で画像と説明文を DataFrame として表示させたいときが多々ある。 元の画像自体は CDN に格納されていて、画像をダウンロードする必要はなく参照するだけのときにはすごく便利。 毎度画像を CDN からダウンロードするのも無駄なので、画像を加工せずに Jupyter 上で表示するだけなら、この方法がベストですね。 url からとってきた画像を jupyter に表示する でも同じような課題に取り組んでいるが、今回紹介する方法なら余計なパッケージを入れずに最小構成で Jupyter 上で表示できるのが利点。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 import pandas as pd from IPython.display import HTML # NOTE: https://www.irasutoya.com/2021/01/onepiece.html から画像を参照 onepiece = { "モンキー・D・ルフィ" : "https://1.bp.blogspot.com/-uxIsaN0S5lQ/X-FcrvAAInI/AAAAAAABdD4/6uw_qNUh9dQrG0aUzIExybt84yTEmXOPwCNcBGAsYHQ/s200/onepiece01_luffy.png", "ロロノア・ゾロ" : "https://1....

12月 28, 2021 · Shunya Ueta

Jupyter Notebook上にTensorboard を わずか2行で表示させる

Pytorch 1.2 からは公式に Tensorboard がサポートされている Tensorboard とは、学習の状況を可視化できる TensorFlow Family の一種 Jupyte Notebook 上で学習状況を確認したい場合に Tensorboard をそのまま表示して確認できれば楽なので、試してみる sample code: https://pytorch.org/docs/stable/tensorboard.html 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 import torch import torchvision from torch.utils.tensorboard import SummaryWriter from torchvision import datasets, transforms # Writer will output to ./runs/ directory by default writer = SummaryWriter() transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5,), (0.5,))]) trainset = datasets....

9月 25, 2019 · Shunya Ueta

Google Colaboratory で Mecab-ipadic-Neologd を使用可能にする

Colabratory 上で 日本語に対する NLP をしたいときありませんか? 1 2 3 4 5 # install MeCab neologd !apt-get -q -y install sudo file mecab libmecab-dev mecab-ipadic-utf8 git curl python-mecab > /dev/null !git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git > /dev/null !echo yes | mecab-ipadic-neologd/bin/install-mecab-ipadic-neologd -n > /dev/null 2>&1 !pip install mecab-python3 > /dev/null インストールに成功しました。 Google Colabratory も以下で公開しているので参考にしてみてください colab-mecab-ipadic-NEologd.ipynb

4月 23, 2018 · Shunya Ueta