Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ビジネスPythonを学ぶ会_2020_11_09_Ogu

J-Ogu
December 09, 2020

 ビジネスPythonを学ぶ会_2020_11_09_Ogu

J-Ogu

December 09, 2020
Tweet

More Decks by J-Ogu

Other Decks in Programming

Transcript

  1. jupyter notebook
    ipywidgets
    を使用してお絵かきパズルを
    可視化してみた
    ビジネスPythonを学ぶ会
    2020.11.09 小栗 潤一

    View full-size slide

  2. ・小栗潤一 (おぐり じゅんいち)
    ・株式会社総合オリコミ社
     ・
    エンジニア (システム研究課 ディレクター)
     ・
    チラシ制作の社内業務を自動化
    ・よく使う言語
     ・JavaScript(adobe)、
    AppleScript、
      Python、
    PHP、
    Vue.js
    ・自分について
     ・
    デザイナーとして入社、
    独学でプログラムを始める。
     ・
    独学に限界を感じて2016年に地元の
    「すごい広島」
    という勉強会に参加
     ・
    趣味は、
    数独・お絵かきロジックなどパズルが好き
     ・2018年に
    「Pythonでお絵かきパズルを解いてみた」
     ・
    本日の本題ではないですが仕事で行っている
    「可視化」
    をご紹介
    自己紹介

    View full-size slide

  3. 重点課題の抽出
    社内業務改善 細かなPGも含めると100~200くらい
    障害発生時の対応件数
    ・Excelデータから編集用データに変換

    日づけ、
    曜日のチェック

    画像データの検索
    ・slackでの問い合わせをスプレットシートに残している

    問い合わせを分析して問題点を抽出 -> 改善を行う

    View full-size slide

  4. 問い合わせが多いプログラムを抽出
    重点課題の抽出
    ・2020年6月から6ヶ月で約80回の問い合わせ
    ・Excelから編集データに変換するPGの問い合わせに焦点を当てる

    View full-size slide

  5. 問い合わせのワードから問題点を推測
    重点課題の抽出

    画像

    確認・監視のワードが多い。
    前工程の問い合わせが多いことが判明した

    View full-size slide

  6. 対応後の効果を検証
    重点課題の抽出
    チームで
    取り組んだことを
    社内に向けて
    発信するために
    データの可視化

    View full-size slide

  7. 本日の議題

    View full-size slide

  8. 2018年 PyCon JP
    「Pythonでお絵描きパズルを解いてみた」
    登壇時に使用した
    ・jupyter notebook ・ipywidgets
    を使用したデータの可視化

    View full-size slide

  9. 本日の議題

    お絵描きパズルとは

    データの処理について(Pandas,Numpy)

    ロジックの一例
    ・DEMO
    (お絵描きパズルを解く)

    まとめ
    (可視化で気をつけていること)

    View full-size slide

  10. 本日扱うデータ
    お絵描きパズルとは

    View full-size slide

  11. お絵描きパズルとは
    本日扱うデータの説明
    数字をヒントに
    マスを塗っていき
    現れたイラストを
    答えるパズルゲーム
    1990年代に
    流行

    View full-size slide

  12. お絵描きパズルとは
    ピクロス
    (任天堂)
    お絵かきロジック
    (世界文化社)
    ののぐらむ
    イラストロジック
    名称が違うだけで
    同じルール

    View full-size slide

  13. 可視化
    ・jupyter notebook
    ・RISE
    ・matplotlib、
    pillow
    お絵描きパズルとは
    Pandas、
    Numpyを使用して問題を解く。

    View full-size slide

  14. 白のマス
    黒のマス
    塗り指示
    xのマス

    処理が未確定の空白のマス

    □□□で表現

    配列ないでは[0, 0, 0, ]

    処理が確定した塗り潰されたマス

    ■■■で表現

    配列ないでは[1, 1, 1, ]

    問題の左・上辺にあるヒントの数字
    お絵描きパズルとは
    用語の説明

    塗られないことが確定したマス

    □□□で表現

    配列ないでは[-1, -1, -1, ]

    View full-size slide

  15. データの処理の仕方
    Pandas、
    Numpy
    簡単な配列計算ロジック

    View full-size slide

  16. DataFrame
    Numpyの配列計算
    Series
    データについて
    [10] [0,0,0,0,0,0,0,0,0,0]
    [3,2,2] [0,0,0,0,0,0,0,0,0,0]

    View full-size slide

  17. Jupyter Notebook
    ipywidgets
    RISE (拡張機能)
    ロジックで配列計算を行い解いていく
    Jupyter Notebookを使った開発

    デモ環境

    View full-size slide

  18. 本日の可視化の本質ではないので
    ロジックの一例を
    一つだけ説明

    View full-size slide

  19. 誰に何を伝えたいのかを意識する
    意識することでデータに説得力!!
    目的を明確にして、
    目的に合ったデータの加工、
    可視化を意識する

    開発デバッグのための可視化 ・
    決裁者に納得していただくための可視化
    データを加工する際に可読性、
    スケールを意識する
    データは簡単に手に入る
    実際のデータに触れてみて、
    慣れることが大事!!
    様々なことが簡単にデータ化できる
    簡単に手に入れることができる
    ・使用履歴 ・apple watchからバイタルデータ ・
    天気 etc...
    うまく活用することができていない
    まとめ

    View full-size slide