今年のPower BI関連活動を振り返り。Power BI以外も少しね。
Power BIの機能強化
まずは復習。Power BI BlogのFeature Summaryを並べてみた。
- https://powerbi.microsoft.com/en-us/blog/power-bi-february-2023-feature-summary/
- https://powerbi.microsoft.com/en-us/blog/power-bi-march-2023-feature-summary/
- https://powerbi.microsoft.com/en-us/blog/power-bi-april-2023-feature-summary/
- https://powerbi.microsoft.com/en-us/blog/power-bi-may-2023-feature-summary/
- https://powerbi.microsoft.com/en-us/blog/power-bi-june-2023-feature-summary/
- https://powerbi.microsoft.com/en-us/blog/power-bi-july-2023-feature-summary/
- https://powerbi.microsoft.com/en-au/blog/power-bi-august-2023-feature-summary/
- https://powerbi.microsoft.com/ja-jp/blog/power-bi-september-2023-feature-summary/
- https://powerbi.microsoft.com/ja-jp/blog/power-bi-october-2023-feature-summary/
- https://powerbi.microsoft.com/en-us/blog/power-bi-november-2023-feature-summary/
- https://powerbi.microsoft.com/ja-jp/blog/power-bi-december-2023-feature-summary/
今更復習してみて、個人的に気になったものや、まだ使いこなせていないものをメモ(明らかに偏っている):
-
Reporting
- 文字列フィールドに基づく条件付き書式
- 表と行列画像幅の書式設定
- New accessible report themes
- [すべてのスライサーを適用] ボタン、[すべてのスライサーをクリア] ボタン、および [最適化プリセットの更新]
- オンオブジェクトインタラクション(オプトイン)
- メジャーの動的書式指定文字列
- Azure Maps の一般提供開始
- Power BI Desktop で OneDrive と SharePoint のファイルをシームレスに操作する
- 新しいカードビジュアル
- ボタンスライサー
- 参照ラベル
- 縦棒グラフと横棒グラフのスタイル設定オプションの追加
- データラベルの拡張カスタマイズ
- Data Activator を使用した Power BI レポートのアラート
-
Analytics
-
Modeling
-
Data Connectivity
-
Service
-
Mobile
-
Developers
-
Visualizations (third-party visuals)
凄く機能拡張されてびっくり。大きな変化は、Microsoft Fabric、Copilot、セマンティック モデル(名称変更)、モデル エクスプローラー、DAX クエリ ビュー、開発者モード、オン オブジェクト、新しいカード ビジュアル(ビジュアルの機能強化系)、動的書式設定あたりだろうか。ビジュアル関係はほっとくといつの間にか置いて行かれるので、しっかりキャッチアップしないと。
来年は、開発者モードのTMDL、データマートのGA、フィールド パラメーターのGAを期待。
あと、これって来年のアドベント カレンダーの記事になるんじゃね?と思った。1日にひな型を投稿して、みんなでそれぞれが気になる機能をちょい解説して編集リクエストを送りまくって、25日までに完成させるとか。
自分
唐突にPower BIと関係ない話。
体重が減った
70kgから10kg減。
きっかけは趣味の献血の検査サービスで数値が悪かったから。自分の内臓には才能が無かったと見切りを付け、食生活を改善。その後、体重は減少し、各種数値は良くなったが、食の楽しみが少しだけ失われた。しゃあない。
みなさん、献血へのご協力をお願いします。
敗北の意味
『シン・仮面ライダー』(2023)を見た。その後に、勢いで見た『仮面ライダー BLACK SUN』(2022)のセリフが突き刺さる:
葵「負けた人から何を受け継ぐの?」
光太郎「・・・敗北の・・・意味だ」
敗北の意味を受け継ぎ進むことは、「真実に向かおうとする意志」に近いのかもしれない。
自分自身で意味があると思った行動であれば、失敗にも意味がある。なぜなら受け継ぐ者がいるから。むしろ、自分自身が多くの敗者たちの意思を受け継いでいるのかもしれない。
また、生え際戦線が年々敗北している気がする。側頭部の火力は十分過ぎるが。
会社
力及ばずPower BI普及は思ったほど進まず。少しずつ芽が出たり、数輪の花が咲いたりという状況ではあるが、一面のお花畑まではまだ遠い。とは言え、メンバーがPower BIの環境整備や知識習得してくれたことは最大の成果。来年か再来年につなげていきたい。
社内Power BI研修
新任者向けにPower BIを教える必要があったので、ついでに本社の全部署向けにPower BI研修を実施することにした。こんなことができるのはTeamsのおかげ。ツールは使いよう。
で、研修準備の段階で、↓に近い内容を思いついた。
と同時に、この役割分担(モデル開発者とレポート作成者の役割分担)ができれば、組織がデータから得られるインサイトを最大化できるという確信を得る。過去にExcelやPythonでやろうとして失敗したデータ分析の高度化・効率化を、Power BIなら実現できるはずだ。ExcelはVBAが放置され過ぎてオワコン(キャリアの先がないので若手に教えたくない)、Pythonは習得できる人が極わずかで、その人に業務(データ取得からレポーティングまで)やツール開発が集中してしまう。Power BIは少数のモデル開発者とその周囲のレポート作成者が協業すれば、効率的にレポート作成が可能。役割を分離できるというのが圧倒的強み。Pythonでは絶対無理。
ということで、気合を入れて研修資料を準備。結果、出来上がったカリキュラムが以下:
- ビジネス ユーザー向け
- 組織アプリの使い方
- レポートの機能
- ビジュアルの機能
- その他Tips
- 組織アプリの使い方
- レポート作成者向け
- 概要
- サンプルファイルの準備
- Poewr BI Desktopの概要
- ログイン、初期設定
- 画面説明
- レポートの作成
- ビジュアル
- スライサー
- 相互作用の編集
- ドリルダウン
- ドリルスルー
- 要素(図形等)
- ブックマーク
- ツールヒント
- さらに学ぶには
- データ モデリング基礎
- テーブルとリレーションシップ
- メジャー
- Power BI Service
- ワークスペース
- レポートの編集・ダウンロード
- データの更新
- 組織アプリの作成
- ユーザーの管理
- 他のMicrosoft 365アプリとの連携
- セマンティック モデル開発者向け
- ミッション
- データ モデリング
- 整然データ
- OLAPとOLTP
- スター スキーマ
- コンテキストとメジャーとCALCULATE関数
- ETL
- Power Queryとは
- 基本的な使い方
- M式言語の紹介
- Power Query vs DAX計算列
- カスタム関数(紹介だけ)
- SharePointへの接続
- ベスト プラクティス
1コマ1時間で、「1. ビジネス ユーザー向け」は1コマ、「2. レポート作成者向け」は3コマ、「3. セマンティック モデル開発者向け」は4コマで実施。レポート作成者は1も受けるので合計4コマ、セマンティック モデル開発者は1と2も受けるので合計8コマ。
300名ほどの社員が参加(セマンティック モデル開発者として最後まで参加は20名ほど)してくれたものの、伝達が一方通行だったことを反省。というか、上記の内容が詰め込みすぎ&演繹的な説明でハンズオンが圧倒的に不足していた。ラーメンハゲの
「しかし、いや、やはりオレは… 客を信じ切れなかった…」
― 『ラーメン発見伝』第26巻より 芹沢達也
の名言を拡大解釈して、自分がうまいと思うラーメンを客に押し付けてしまった。何事も塩梅が難しい。
Power BI活用支援
研修受講者かつPower BI利用希望者を対象に、各部署へのPower BI導入を支援。現在も継続中であるが、いろいろ課題が見えてくる。最大の課題は、
- 学ぼうとしない&作業に時間をかけようとしない
ということ。そもそも当事者に強烈なニーズがないと進まないのならわかるが、既存のレポーティング業務の置き換え(=業務効率化目的、BIで何をするかで迷う必要はない)でも同じような状態になる。
担当者ら(=非管理者)の意思ではどうにもならない。管理者(と部長)を巻き込む必要があると痛感。
「うまいラーメン」と同じ轍を踏んでいるようだ。良いものがあればうまくできるというプロダクト アウトな考え方におちいっている。組織にスケールアウトするには、それだけでは足りない!考え方とやり方を変えなければ。
社外コミュニティ
やばい(語彙力)。これが今年最高すぎた。とにかく楽しく、しかも仕事に役に立つという、良いことだらけ。もし8月までの私のように、ちゅうちょしている人がいれば、勇気を出して参加して欲しい。やばいから(語彙力)。
老舗着物店「鈴花」が日本DX大賞を受賞
社外コミュニティに関わることになったきっかけ。つかぽん氏@tsukaponの日本DX大賞受賞が私を変えた(断言)。やや腐り始めていた私が生き返った。勝手につかぽん氏のことをヒーローかつライバルと思っている。
以下で、勝手に氏の偉業をまとめたいと思う。
Power BI活用以前に、データを如何に収集するかが重要であるが、Power Platformで従業員の入力負荷を軽減しつつ既存CRMシステムとも連携していた点がすごい。既存CRMシステムを拡張すれば数千万円は発生していたコスト。
何よりも、
"(時代に)遅れたなあと思いました。使いきらんとですよ、いろいろ。変にしたら、パッと違う画面が出てきたり。”
という、営業社員の声(CRMを活用したいが、自身が適用できないため、昔ながらの手帳に頼らざるを得ない)を真摯に受け止め、
"パソコン操作が苦手な社員でも操作できるよう、タブレットを導入し、文字の大きさや機能面にも注意しながら作成いたしました。"
"営業社員は60歳を過ぎている方がほとんど。タッチだけで誰でも操作できるようなアプリを作ってみました。"
と対応。結果、
"DXなんて難しいと思っていたけど、やってみればそんなに難しくないし、仕事が楽になったし、やってよかったです。"
という、システム側も営業社員もWin-Winの形にまで持って行った。営業社員も自信を持って仕事ができるようになった。
その他の点も含めて、氏の偉業を箇条書きにすると:
- PowerPlatformでできることを理解した上で(それだけでもかなりの勉強が必要)、全体のフレームワークをデザインし、実際に作った。
- Power BIで分析し、アプリ活用の基盤を作った。
- デジタル化のキャッチアップを、組織の支援を受けつつも、一人の超人が達成。
- 次の世代を育てようとしている。その効果の大きさは、実績から簡単に推し量れる。
凄い。その超人はどこでも通用する力を得ている、つまり、Power Platformを活用した年間数百万~数千万円単位の経費削減&もっと多くの額の付加価値創造の力を手にしていることは明らか。で、会社としてはどうするんでしょうかね??
Power BI勉強会 in 佐賀
つかぽん氏の偉業を称えるイベントが開催ッッ!
オンラインでも参加できたことから、実はギリギリまで現地参加を悩んだが、現地参加して大正解!!出張させてくれた会社に感謝!
Power BI勉強会 in 佐賀では、MVPの人に、「いつも丁寧な記事と思って読んでいた。いつかは出会うと思っていた。」、「あなたの記事はいつも最後まで見ている。」、「マキちゃんなので女性だと思っていた(男かよ!)」等々うれしいお言葉をいただき、井の中の蛙おじさんは大いに自信を持てた。
あと、なぜかExcelの神さまの田中亨先生もいた。VBAの勉強で死ぬほど参考にさせていただいたので、神の登場にただただ驚くばかりだった。
その他の方々との交流も、とにかく楽しかった💖 みなさん、また会いましょう💖
また、直後のPower BI Weekly Newsでわかったが、ゆーごさん@yugoes1021と石川さん@ishiayayaはPower BI勉強会 in 佐賀の前日のイベントから一緒なのに、Weekly Newsの直前くらいまで一緒にいるという仲の良さに感動&この2人がやっているコミュニティは強いと確信。付いていこうと決めた。
DAX Boot Camp & Power Query 虎の穴
Power BI勉強会 in 佐賀で、コミュニティの楽しさに味を占め参加したDAX Boot Camp。自信満々で参加したものの、まさかの洗礼:
Power BIを勉強するなら、Power BI Desctopだけ勉強してたらだめ。
とにかく感動。最近だれも自分を叱ってくれなかったし(仕事のやり方はともかく技術的な点では全く)。
誤解しないで欲しいが、かがたさん@PowerBIxyzはスパルタではない。本当にレベルに関係なくウェルカムだし、その人に合わせてアドバイスをしてくれる(すごい)。だから、みんなも勉強会に参加しよう!みんなでガヤガヤするのは楽しいよ💖 もし社内で一人でモヤモヤしているならなおさら。
Power BIユーザー交流会
11月はMicrosoft主催のPower BIユーザー交流会にお呼びいただき、他社と交流。他社が「経営陣の後押しを受けてPower BIを進めているんだけど、こういうところで困っているんだよね。」という高度な発表をしている中、先述の社内研修の件を発表。何かちょっとレベルの違う悩みとは思いつつも、新たな出会いがあり、非常に良い経験になった。
なお、最後のクイズ大会では惨敗。。。次は勝つ。
Weekly News Offline ~2023年 冬の陣~
12月のWeekly News OfflineはMVP勢ぞろいの豪華イベント。Microsoft 365、Power Platform、Copilot等々、興味深い話題が次々と流れた。自分の会社でPower Automate & Power Appsが使えないのがもどかしすぎた。ここでも、新たな出会い(というかオンラインのあの人!という出会い)があり、本当に楽しかった。
石川さんの名言が爆誕した。他にもいい話がいっぱいあったけど、これしか記憶にない😅
(Copilotを使おうとしたら)Microsoft Fabricの料金は高いが、"Pay-as-ゆーごー"なのでゆーごさんが払ってくれる。
Japan Power Platform Conference
1日目のMicrosoft Fabricワークショップは現地参加。Copilotの生実演に衝撃。早くPPCを使えるようにしたいと思った。あと、お弁当が旨かった。
メイン イベントはオンライン参加。現地参加すべきだったと後悔。。某T社の事例を紹介するタイガーさん(所属、経歴一切不明のマスクマン)の発表には唯々驚くばかりだった。
また、アドベント カレンダーでも投稿されているすとーさん@akihiro_sutoの記事は、セマンティック モデルがセマンティックである所以が垣間見えるわかりやすい発表だった。
当日時間が合わなくて見れなかったが、データ メッシュという新しい言葉を知ることができた。
その他にも、Power BI関係は参考になるようなレベルの高い発表ばかりだった。
Qiita Power BI Advent Calendar 2023
12月はアドベント カレンダー祭り。
もともと2記事の予定が本記事含め8記事に。脱Power BI初心者の記事は書くのがしんど過ぎて、他の投稿と順序を入れ替えたり、途中放置したり、ギリギリまで書いたりと大変だった。
どうせアドベント カレンダーに追われるならとことん楽しもうと、今回はいろんな人の記事にコメントを書いてみた(お邪魔しました)。みなさんの温かいリアクションに感謝。お祭り気分で過ごせた12月だった。
(おかげで、11月にNASを買ったけど箱から出せず仕舞い。家の仕事はギリギリ達成。)
Qiita投稿
Power BI関連
本投稿含め10投稿のうち、8投稿がMicrosoft Power BI Advent Calendar 2023。どうしてこうなった!
Power BI: コンテキスト トランジションを理解する
去年のアドベント カレンダーに投稿した時点で、DAXやPower Queryはそこそこマスターしたと思っていた。が、DAXを書いていて、コンテキスト トランジションという重要概念を理解していなかったことに気づいた。自分にがっかりするとともに、学んだことを形に残すために投稿。
コンテキストとメジャーとCALCULATE関数をわかりやすく説明してみる
フィルター コンテキストという難解な概念について、一昨年のアドベント カレンダーで狂った投稿をした。が、こんなものは説明には使えない。社内研修で使用するために書いた記事。CALCULATE関数は見えているもの(引数)だけではなく、見えないもの(既存のフィルター コンテキスト)も使っていて、それを意識することが重要という点をわかりやすく説明した(つもり)。でも難しいよね。
Power BIでの合計不一致 〜 意図せぬコンテキスト トランジション 〜
コンテキスト トランジションの記事第2弾。こちらに記載の、誤った集計をするケースを具体例で示したかった。
JPPC2023の1日目Power BI関連のメモ
Japan Power Platform Conference 2023の1日目Microsoft Fabricワークショップに参加。その時のメモ。
Web公開されているPower BIレポート集
小ネタ。Web後悔されているレポートはそれなりの完成度で、手軽に見れるので、Power BI導入の社内説明にお勧め。
レポート作成の練習になりそうなオープンデータ
これも小ネタ。会社の情報が使えない自宅でPower BIの練習をするには、オープンデータがおススメ。興味があるデータだからこそ、どういう可視化が必要かを自分で考えるモチベーションを保てるのではないかと。私は魚種別漁獲量の年推移をひたすら分析してしまった。
Power BIが難しい理由 ~基礎をしっかり勉強しよう~
2つ後の記事を書いている途中で、前段が長くなりそうだったので分離。なぜ基礎がないがしろにされるのかについてのポエム。ツールには設計思想があるということを認識してもらえればと。
Power BIの行レベル セキュリティ(RLS)を理解して動的なRLSを実装する
DAX Boot Campでいただいたご意見反映版。RLSよりもLXMLAエンドポイントを覚えた方が良いんじゃないかと。RLSでセマンティック モデルが複雑化する(ビジネスロジック+RLSロジックになるので当たり前)のは避けたいかなと。
脱Power BI初心者のための道しるべ
市販の本のその先に進むために必要な項目を網羅したもの。そして、これまでのPower BIの勉強の個人的な集大成的記事。知っていることはほぼ吐き出した感じ。
その他(QuantLib)
この節はPower BIは一切関係ない🙄
QuantLibとは、さまざまな金融商品の時価計算機能を提供するライブラリー。時価計算って、理論も難しいし、実務に合わせた実装も難しい。例えば、各国の祝休日考慮だけでも面倒であるが、さらに日数計算を年率換算する方式だけでもめちゃくちゃな数があり、作るのはしんどい。QuantLibはそれらにほとんど対応してくれるすごいやつ。
ただ、QuantLib自体は良いものの、QuantLibのPythonパッケージのドキュメントは未完成だし、本家C++ドキュメントもAPIリファレンスでしかない。まあ、オープン ソースなので文句を言うのは筋違いであるが、初学者のハードルが半端なく高かった。
そのような中で現れた、Quant College レクチャーシリーズ(16)QuantLib-Python チュートリアル(債券イールドカーブ編その1)は凄く画期的だった。たぶん、英語圏含めてもここまでわかりやすく説明しているものはない。この記事でQuantLibを学び、例によって社内説明をするためにいくつか記事を書いてみた。
QuantLibのダウンキャスト
ライブラリー内でポリモーフィズムを使いまくっているため(それ自身はライブラリーのあるべき設計思想)、オブジェクトが親クラスのインスタンスとして認識され、本来のクラスが持つメンバーにアクセスできないことがある。例えば、固定利付債FixedRateBond
クラスのクーポン キャッシュフローはFixedRateCoupon
であるが、FixedRateBond
からはcashflows
メソッドでしか、キャッシュフローのオブジェクトを取得できない。そうなると、クーポン キャッシュフローと元本キャッシュフローの区別がつかないから、そのままではクーポン キャッシュフロー特有のメンバーにアクセスすることができない。もちろん、Pylanceのインテリセンスでも表示されない。そして、Pythonと違って(C++のオブジェクトをつかっているので)型定義が厳格で、ダックタイピングが出来ない。そのようなときには、明示的にダウンキャストを行う必要がある。
と、この記事を書いていてこういう大事な説明がないことに気づいたので元記事に追記しておこう(今更)。
QuantLibの固定利付債のクーポン計算方法を確認する
まあタイトルのとおりなんだけど、ちゃんとQuantLibの機能を使ってクーポンの計算の確認もできるよねと。ライブラリーは便利だけど、ちゃんと自分で確認しようねという話。キャッシュフローをクーポンと元本で区別するところで、先述のダウンキャストを使用。
QuantLibのYeildTermStructureの機能を確認する
これもQuantLibの機能を使って各種金利の計算の確認ができるよねと。最後に書いた生成済みイールド カーブから、フォワード カーブとゼロ レートを手軽に計算できるのが楽だなと思う。まあ、自分でも書けるけど、テスト済みのライブラリーがあると便利ですよねと。
来年やること
年末恒例@marshalの長編投稿でまたも感激。もはや大長編ドラえもん並みに皆の涙をさらっていることだろう。
昨年の投稿を読み返してもまた感動。
自分が次にどうすべきかが先回りして書かれている感じがする。本当に参考になる。
経営層の説得
「データが重要」なんてことは経営層も知っている。
もっと解像度を高めて説得しなければ意味がない(=ズバリその後の自分の評価につながらない)。
- いま経営陣が見ているデータがどれだけ人の手を介しているか(=その分、他の知的生産的な活動をあきらめている)気づいて欲しい。
- 本当は自分でもっと自由にデータを見たいよね?
- 木造100階建て(技術は江戸時代以前)のExcelファイルがありますけど、その維持費は?
- 「データはAIの燃料」であることを知って。
- 生成AIに踊らされている場合じゃない(他人事なら大草原だけど、自分事だとひどすぎて草も生えない)。
- それがあれば頑張んなくても何とかなるじゃないよね。
- 高度なツールを頭の悪い使い方をするというパターン。競合他社は頭をフル回転させてAIを使っていますよと。
と、愚痴を書いてばかりなのは、現時点で自分が上を説得できない無能だから。
ダッシュボードを見てくれている経営層もいるので、そこを起点にどうにかできないものかと検討中。予算確保と施策実施支援、やった人への評価を勝ち取りたい。
着実なインフラ整備
Power BI Premium Per CapacityとMicrosoft Fabricを導入したい。セキュリティ審査部署とやり取りするのは気が重いが、経営層への説得次第では幾分スムーズにできるのではないかと期待。
Power BI開発者育成
次の世代のつぼみがたくましく育っているから、また花が咲く…
大切なのは、今咲いている花だけじゃないんです…
― 『家栽の人』より
社内ハンズオン研修
社内研修は5月、9月に2回行ったが、よりハンズオンを重視した研修を来年1月に実施予定。と言っても、Microsoft提供のDashbord in a Dayをそのままなぞるだけ。冬休み中にしっかり中身を確認するから、下手なベンダーよりもしっかりやるからね💖
研修の最適解は、前回の抽象的な内容と1 Dayハンズオンの間にある気がするので、そこはやりながら考えよう。
社内コミュニティ形成
育成だけじゃ無理。一回こっきりの勉強会じゃ身につかないし、独学にも限界がある(というか続けられない)ので、社内コミュニティの育成はやりたい。これまでVBAを各部でちまちまやっていた孤独なおじさん/おばさんたちは、(メンタル的に)刀折れ矢尽きつつも戦っていた(誰と??)。コミュニティで部横断の徒党を組めばやり返せるかもしれない(物騒)。(受け継ぐのは)敗北の、、、意味だ。
Power BI活用支援
今も他部署のダッシュボード作成を支援しているが、手を挙げた担当者を支援する仕組み。担当者がもの凄いやる気なら問題ないが、担当者の裁量に依存しているので、人に依っては全然進まないことも。それって組織として進めるにはどうなの?という問題。
ダッシュボード導入部署の管理者以上を巻き込まないと担当者の時間を確保できないので、そういう形に持って行けないか考えたい。例えば、
- 担当者がPower BIのために20%の時間を割り当てられるように管理者とコミットする。
- 全社ダッシュボード開発案件一覧に登録し、経営層に進捗状況を報告する。
おわりに
アドベント カレンダーやり切った。ほんとに頑張った。。。ミスター アドベント カレンダー@akihiro_sutoと比べるべくもないが、大変だったし楽しかった。
メリークリスマス💖 & 来年がみなさんにとって良い1年になりますように💖 来年もPower BIを楽しんで勉強しましょう。