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

Digital TransformationをPythonを使って進めよう!

Hide Ogawa
October 30, 2023

Digital TransformationをPythonを使って進めよう!

PyConAPAC2023 Day2 13:55 - 14:10
合同会社長目 小川 英幸

DXは最終的にデジタル活用したビジネスモデルの変革を目指す。その作業には物理・アナログデータのデジタルデータ化(デジタイゼーション)と、業務プロセスのデジタル化(デジタライゼーション)があり、それらが組み合わさってDXが進む。

昨今の日本企業では、両方のプロセスが進み始め、活用できる社内データが増え始めている。そのため、データを分析してビジネス価値を生み出せる段階にある。

一方で、社内のデータだけではビジネスの価値向上を達成するのは難しく、社外のデータも必要となる。社外のデータとしてはオープンデータが活用できる。

本トークは、社外のデータの取得や、社外のデータと社内のデータを組み合わせて分析して、価値を出す作業はPythonを使うと簡単にできるということを示すトークとなる。

またその実践として、札幌市のオープンデータを具体的にどう扱うかも示した。実際のコード、データは次のgithubリポジトリにある。

[https://github.com/mazarimono/pyconapac2023](https://github.com/mazarimono/pyconapac2023)

Hide Ogawa

October 30, 2023
Tweet

More Decks by Hide Ogawa

Other Decks in Business

Transcript

  1. Digital Transformationを
    Pythonを使って進めよう!
    PyConAPAC 2023
    合同会社⻑⽬ CEO
    ⼩川 英幸

    View full-size slide

  2. ⽬次
    ● ⾃⼰紹介
    ● トークのモチベーション‧課題
    ● Pythonを使う理由‧役⽴つポイント
    ● 実践⽅法
    ● まとめ

    View full-size slide

  3. ⾃⼰紹介
    ⼩川 英幸 ( X: @ogawahideyuki)
    おがわ   ひでゆき
    合同会社 ⻑⽬ Founder & CEO
    新卒後、2000年〜2017年まで証券会社にてトレーダー‧アナリストとして勤務。
    2017年に⻑⽬設⽴。
    執筆:
    Pythonデータ分析ハンズオンセミナー(⽇経BP 2023/8)
    Pythonインタラクティブ‧データビジュアライゼーション⼊⾨(朝倉書店 2020/12)
    WEB + DB Press Vol.118 Pythonデータ可視化
    登壇:
    PyCon APAC 2023 など多数。

    View full-size slide

  4. 合同会社 ⻑⽬
    ごうどうがいしゃ ちょうもく
    京都市に拠点を置く、データ分析会社。
    受託データ分析‧AIモデル作成、企業のIT活⽤のコンサルティ
    ングを⾏う。
    2022年10⽉から2023年9⽉まで浜松市POCにて、オープンデー
    タの企業の利活⽤を試した。

    View full-size slide

  5. 書籍執筆

    View full-size slide

  6. 書籍執筆
    位置情報付きの国勢調査のデータを
    Pythonを使って、どのように企業で⽣か
    せる情報を作成するかを、ハンズオン形式
    で扱う書籍。
    GeoPandas, folium, panelなどを使う。
    今回の発表内容は、書籍から漏れたもの。
    お⾒かけの際は、ぜひお⼿に取っていただ
    けますと幸いです。

    View full-size slide

  7. 書籍執筆
    売上の⼀部を寄付しました。
    - ⽇本⾚⼗字
    - ⽇本⾻髄バンク
    - NumFOCUS
    - OpenStreetMap
    書籍を⼿にしていただいた皆様のおかげで
    す。ありがとうございます!

    View full-size slide

  8. ⽬次
    ● ⾃⼰紹介
    ● トークのモチベーション‧課題
    ● Pythonを使う理由‧役⽴つポイント
    ● 実践⽅法
    ● まとめ

    View full-size slide

  9. ハードウエアが変わるたびに、
    ブレーンウエア(考え⽅)を変えろ
    2000年代に⽶国務⻑官を務めたコリン‧パウエル⽒
    『リーダを⽬指す⼈の⼼得』
    (コリン‧パウエル、トニー‧コルツ著, 井⼝耕⼆訳、⾶
    ⿃新社)

    View full-size slide

  10. DXとデータ分析の関係

    View full-size slide

  11. ⽇本企業のデータ活⽤の現状

    View full-size slide

  12. ⽇本企業のデータ活⽤の現状

    View full-size slide

  13. 次のステップ: データで価値を作っていく

    View full-size slide

  14. 社会のデータをどう取得する?

    View full-size slide

  15. 社会のデータ: オープンデータでカバー

    View full-size slide

  16. オープンデータも⼤規模化している
    浜松市の国勢調査のデー

    250mメッシュの⼈⼝な
    ど基本集計に関する事項
    統計地理情報システムよ

    (https://www.e-stat.go.j
    p/gis)

    View full-size slide

  17. データ活⽤のイメージ
    PDCAではなく、OODAループで(常に観察し変化に対応し、⾏動)

    View full-size slide

  18. トークのモチベーション‧課題
    DXの肝はビジネスのデジタル化により、
    ビジネスモデルの変⾰を進めること。データ分析も重要。
    ビジネスの変⾰には、社内のデータだけでなく、社外‧社会の
    環境のデータを活⽤することも重要。
    その辺りに、Pythonとオープンデータを上⼿く使うと良いの
    ではないか?Pythonの有⽤性に触れたあと、実際に札幌市の
    オープンデータを使って、データ分析を実践する。

    View full-size slide

  19. ⽬次
    ● ⾃⼰紹介
    ● トークのモチベーション‧課題
    ● Pythonを使う理由‧役⽴つポイント
    ● 実践⽅法
    ● まとめ

    View full-size slide

  20. データ分析でPythonを選択する理由
    - 多くの⼈が使っていて、データ収集から機械モデル作成、
    報告まで、使いやすいツールがある
    - 現在では、ChatGPTがデータ分析機能のファーストチョイ
    スとしてつかっているから、Pythonを学ぶという理由もい
    いかもしれない(Advanced Data Analysis)

    View full-size slide

  21. ChatGPTに聞いてみましょう

    View full-size slide

  22. ChatGPTに聞いてみましょう

    View full-size slide

  23. ChatGPTに聞いてみましょう

    View full-size slide

  24. 代表的なデータ分析のステップ
    - データ収集
    - サイトから
    - APIから
    - データ前処理
    - 分析に使うデータを、分析に使える形に
    - データ可視化‧EDA
    - 統計量‧グラフなどから、データの傾向を確認
    - モデル作成
    - 役⽴つ情報にデータを変換
    - モデル化する
    - 報告
    - 分かりやすい形で情報を提供
    👈Pythonで全てこなせる

    View full-size slide

  25. Pythonの役⽴つポイント
    - データ収集
    - サイトから
    - APIから
    - データ前処理
    - 分析に使うデータを、分析に使える形に
    - データ可視化‧EDA
    - 統計量‧グラフなどから、データの傾向を確認
    - モデル作成
    - 役⽴つ情報にデータを変換
    - モデル化する
    - 報告
    - 分かりやすい形で情報を提供
    👈Pythonで全てこなせる
    requests
    pandas
    matplotlib, plotly
    sklearn, pytorch
    panel, stremlit

    View full-size slide

  26. ⽬次
    ● ⾃⼰紹介
    ● トークのモチベーション‧課題
    ● Pythonを使う理由‧役⽴つポイント
    ● 実践⽅法
    ● まとめ

    View full-size slide

  27. 今回のデータなどの概要
    - 概要
    - 札幌市のオープンデータを使って、分析実践
    - サイト: https://data.pf-sapporo.jp/
    - 使うデータ
    - 札幌市の地下鉄の乗⾞数(Daily)
    - 札幌駅前通地下歩⾏空間(チ・カ・ホ)⼈流データ(15min)
    - 札幌市内の気象観測記録(区別‧年次別)(10min)
    - 札幌市円⼭動物園の⼊場者数(Daily)
    - データがちょっと⾶んでいる
    - ライセンス: CC4.0
    - オープンデータ
    - デイリーでビジネスに役⽴つデータを出しているのは札幌
    市くらい(情報求む!!!)

    View full-size slide

  28. 今回のトークの分析⽬的
    歩⾏量‧乗⾞数‧天候と動物園⼊場者数の関係を観察

    View full-size slide

  29. 実践にすぐ置き換えられる
    動物園⼊場者数を集めた⾃社データに置き換える

    View full-size slide

  30. ここからPythonの出番です!

    View full-size slide

  31. データ取得
    - APIがあるようですが、LOD全然分からんのと、どの
    データが取れるかわからなかったので‧‧‧
    - https://data.pf-sapporo.jp/apiuse/
    - ⽉毎など頻度でCSV、エクセルファイルなどで提供
    コードは割愛

    View full-size slide

  32. 前処理
    - 前処理とは
    - 分析する前に次のようなことを確認するステップ
    - データがコンピュータで処理できるか
    - 期待するようなデータか?
    - 異常値がないか
    - などなど
    - 前処理ポイント
    - 技術的にはいろいろある。上⼿くpandasなどを使うと良

    - 処理後、可視化して確認すると、うまく処理できたか理
    解しやすい
    - あまり前処理がいらない場合、データを作ってくれている⼈
    が頑張ってくれている。感謝。
    コードは割愛

    View full-size slide

  33. 前処理
    - 今回の前処理
    - それぞれのデータごとに確認
    - 内容(カラム名)
    - 分析に使えるデータか?
    - 使えない場合、プログラムで処理
    - データがあっていそうか確認
    - 望みのデータが出来たら保存
    - ポイント
    - データがうまくできているかデータを可視化
    するとわかりやすい
    コードは割愛

    View full-size slide

  34. 前処理
    - 今回の場合スパイクがあったが、ノイズかは不明
    - 2020年4⽉20⽇
    コードは割愛

    View full-size slide

  35. 分析する
    - データの観察
    1. それぞれのデータがどう動いているか観察
    2. データがどう動くか?
    3. データ間の相関などを観察
    - 観察のポイント
    - 多くの属性を観察できるツールが提供されている
    - それをうまく使う(parallel_coordinates関数)
    - よりインタラクティブに観察する(panelを使う)
    - 統計量なども使う(今回省略)
    - NOTEBOOK:
    https://colab.research.google.com/drive/1xNyMrmYV0BVra
    oWEfH7HLxL1kbgDHLh1?usp=sharing

    View full-size slide

  36. 観察
    - 個別にみる

    View full-size slide

  37. 観察
    - いくつかの関係を⾒る
    - (⼊場者数、有料⼊場者数、⽉)

    View full-size slide

  38. 観察
    - 多めの要素を観察

    View full-size slide

  39. Jupyterで観察観察⼤変 => panelがおすすめ
    - 要素を切り替えるのに⼊⼒して shift + enter
    - 避けるためにいくつか⽅法が
    - Jupyter上でインタラクティブに動作する可視化アプ
    リを作る
    - JupyterDash: Reactの勉強にはよいけど、コード量多
    - streamlit-jupyter: まだ出たばっかりだしなぁ‧‧‧
    - panel: numfocusだし、Jupyter上で動かすとなると、
    現状はファーストチョイス!?

    View full-size slide

  40. Jupyterで観察⼤変 => panelがおすすめ

    View full-size slide

  41. 機械学習モデル作成
    - 総来園者数を予測するモデルを作成する
    - model: LightGBM
    - 訓練データ: 2019/4/1 - 2022/11/30 テストデータ: 2022/12
    - 利⽤パッケージ
    - scikit-learn: データの前処理、モデルの評価
    - LightGBM: モデル作成など
    - notebook:
    https://colab.research.google.com/drive/1OUwGNAGL5i6N
    LgAx7kJ07XR0a9K5vAyf?usp=sharing
    - 精度上げたいという⽅は、dataがgithubにあります。精度上
    がったら、Xなどでお知らせいただけますと幸いですw
    - https://github.com/mazarimono/pyconapac2023

    View full-size slide

  42. 機械学習の推論結果の観察

    View full-size slide

  43. ⽬次
    ● ⾃⼰紹介
    ● トークのモチベーション‧課題
    ● Pythonを使う理由‧役⽴つポイント
    ● 実践⽅法
    ● まとめ

    View full-size slide

  44. まとめ
    - ⽇本企業でデータ基盤が整い、今後はデータ分析を使ってどうし
    ていくかが重要となる(デジタル化の次のステップ)
    - 社内の情報だけでなく、社外のデータもうまく活⽤して業績を伸
    ばす。そのためにオープンデータなどの外部データを活⽤すると
    いう発想も重要。
    - LLMがあるからプログラミング⾔語は⼈類は使えなくてもよいと
    いう発想もあるが、逆に共通⾔語としてある程度できると、ハル
    シネーションを修正したりと役に⽴つ。
    - データからインサイトを得るという部分では、Pythonのエコシ
    ステムが揃っており、それを活⽤しない⼿はない。
    - データとその分析ツールを活⽤して、企業の業績の拡⼤を⽬指し
    ましょう

    View full-size slide

  45. まとめ
    技術の発展にあわせて、
    ブレーンウエア(考え⽅)を変えろ!
    ⻑⽬ ⼩川 英幸

    View full-size slide

  46. ご清聴ありがとうございました。
    ご意⾒‧ご感想は
    Xにいただけると嬉しいです!
    (X: @ogawahideyuki)
    お仕事のご相談は会社のコンタクトフォームまで
    コンタクトURL: https://chomoku.info/contact

    View full-size slide