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

[Power BI] 静的ABC分類を構築する。

[Power BI] 静的ABC分類を構築する。

0cc2ebc5781bcb2cae5f9ab7efa40ff2?s=128

Akihiro Suto

March 26, 2022
Tweet

More Decks by Akihiro Suto

Other Decks in Technology

Transcript

  1. 1

  2. ABC分析とは https://ja.wikipedia.org/wiki/ABC分析 ABC分析(エイビーシーぶんせき)とは「重点分析」とも呼ばれ在庫 管理などで原材料、製品(商品)等の資金的重要度を分析する手法であ る。在庫の資産としての価値などの評価(重要度)別に段階的な管理手 順を適用する。この手法は品質管理におけるパレート分析に類似して いる。 2

  3. 静的ABC分類 モデリング Salesテーブル 3

  4. Produstsテーブル 4

  5. リレーション 5

  6. ビジュアライズ こんな感じのテーブルになり ます。 6

  7. 新しい列を追加 新しい列を追加していきます。 7

  8. 列追加 累計売上 累計売上 = VAR CurrentProductSales = 'Sales'[総売上] VAR BetterProduct

    = FILTER ( 'Sales', 'Sales'[総売上] >= CurrentProductSales ) VAR Result = SUMX ( BetterProduct, 'Sales'[総売上] ) RETURN Result 8
  9. 累計売上% 累計売上% = DIVIDE ( 'Sales'[累計売上], SUM ( Sales[総売上] )

    ) ABC分類 ABC分類 = SWITCH ( TRUE, 'Sales'[累計売上%] <= 0.7, "A", 'Sales'[累計売上%] <= 0.9, "B", "C" ) 9
  10. ビジュアライズ 列を追加することで静 的ABC分類が完成しま した。ビジュアライズ をして確認します。 10

  11. 11

  12. 12

  13. うん、よさそう 13

  14. 静的ABC分類の最適化 列を追加 → モデルのサイズ大 更新に時間がかかってしまう可能性大 ABC分類の結果がほしいだけであれば、すべての列追加をひとつのコ ードにまとめ、モデルのサイズを小さくすることも検討。 14

  15. ADDCOLUMNS 関数を使用。 最適化ABC分類 = VAR SalesByProduct = ADDCOLUMNS ( 'Sales',

    "@ProdSales", [総売上] ) VAR CurrentSales = [総売上] VAR BetterProducts = FILTER ( SalesByProduct, [@ProdSales] >= CurrentSales ) VAR CumulatedSales = SUMX ( BetterProducts, [@ProdSales] ) VAR CumulatedPct = DIVIDE ( CumulatedSales, SUM ( Sales[総売上] ) ) VAR ABCClass = SWITCH ( TRUE, CumulatedPct <= 0.7, "A", CumulatedPct <= 0.9, "B", "C" ) RETURN 15
  16. このバージョンのコード → モデルサイズ小 ただし、プロダクト数が多いデータベースでは、 カラムの計算に過剰なメモリを必要とする場合があります。 要は適材適所ってことですね 16

  17. おしまい 17