Microsoft Power BIでCOUNTIFロジックを適用する方法 - TechRepublic

Microsoft Power BIでCOUNTIFロジックを適用する方法 - TechRepublic
Microsoft Power BI のロゴが表示されているラップトップ コンピューター
画像: monticellllo/Adobe Stock

Microsoft Excelユーザーの多くは、条件付きで項目をカウントできるMicrosoft ExcelのCOUNTIF()関数をよくご存知でしょう。例えば、過去1年以内に入社した従業員の数を知りたい場合や、担当クラスに合格していない生徒のリストが欲しい場合などです。

Microsoft Power BI をツールボックスに追加した場合、メジャーで同じことを行う方法がわからないかもしれません。このチュートリアルでは、Power BI の 2 つのカウントメジャーを使用して COUNTIF ロジックを適用する方法を説明します。

参照: Google Workspace vs. Microsoft 365: チェックリスト付き比較分析 (TechRepublic Premium)

Windows 10 64ビットシステムでPower BIを使用しています。デモ用の.pbixファイル「AdventureWork Sales」はGitHubからダウンロードできます。ダウンロードしたら、.pbixファイルをダブルクリックしてPower BIで開き、手順に従ってください。

1 Zohoアナリティクス

企業規模

企業規模ごとの従業員数

マイクロ(0~49)、スモール(50~249)、ミディアム(250~999)、ラージ(1,000~4,999)、エンタープライズ(5,000以上)

あらゆる規模の企業 あらゆる規模の企業

特徴

アドホック分析、コラボレーションツール、ダッシュボードなど

Power BI の COUNTIF とは何ですか?

「Power BIのCOUNTIFとは何ですか?」という質問に対する技術的な答えは「ありません」です。Power BIにはCOUNTIFメジャーはありません。Power BIのメジャーは、Microsoft Excelの関数に似た計算式です。

ExcelのCOUNTIF()関数は、特定の条件に基づいて範囲内の値を数える論理関数です。Power BIでも同じロジックを適用できますが、COUNTIFメジャーがないため、ご自身で計算する必要があります。

良いニュースは、それが可能だということです。悪いニュースは、Power BIでCOUNTIFロジックを適用するには、Excelよりも手間がかかるということです。

COUNTIF ロジックを適用する場合は、2 つの Power BI メジャーを使用してモデルまたは明示的なメジャーを作成します。

  • COUNTA: このメジャーは列内の値の数をカウントしますが、NULL 値または空白値は評価しません。
  • COUNTROWS: このメジャーは、列内の行数をカウントします。

モデルメジャーは、ユーザーが作成する、つまり明示的に定義されたメジャーです。何が不足しているかがわかったところで、COUNTAとCOUNTROWSを使ってPower BIでCOUNTIFロジックを適用してみましょう。

Power BIでCOUNTIFロジックを適用する方法

AdventureWorksデータベースを使って、特定の郵便番号エリアの顧客数を数えたいとしましょう。今回はテーブルを1つだけ扱うので簡単です。多くの場合、2つ以上のテーブルを扱うことになります。

Power BI Desktop で、左ペインのデータアイコンをクリックし、フィールドペインで Customer テーブルを展開します。Customer テーブルが開いたら、新しいメジャーを作成する準備が整います。計算グループの [新しいメジャー] をクリックします。

図 Aに示すように、デフォルトのメジャー名を次の式で上書きします。

Customer Measure = COUNTROWS(Customer)

図A

最初の小節を追加します。

このメジャーはCustomerテーブルの行数を返します。次に、COUNTA関数を使ってPostal Codeテーブルの値の数を返してみましょう。そのためには、次の式を使って2つ目のメジャーを追加します。

Postal Measure = COUNTA(Customer[Postal Code])

図Bに示すように、このメジャーはCustomerテーブル内の郵便番号の値の数を返します。一意の値ではなく、単に値を返します。1つのテーブルしか扱っていないので、2つのメジャーは同じ数を返すはずだとお考えなら、その通りです。

図B

2 番目のメジャーを追加します。

どちらのメジャーも、Customerテーブルノードの「フィールド」ペインに表示されます。いつでもアクセスして変更または削除できます。

では、2つのメジャーを適用しましょう。レポートアイコンをクリックします。日付テーブルが表示されている場合は削除してください。

「視覚化」ペインでは、表形式の方が分かりやすいため、「マトリックス」をクリックします。マトリックス視覚化にデータを入力するには、「フィールド」ペインから「郵便番号」フィールドを「視覚化」オプションの「行」リストにドラッグします。次に、「顧客」メジャーと「郵便」メジャーを「値」リストにドラッグします。

図Cは、結果として得られたマトリックスの視覚化を示しています。この場合、顧客行の数は郵便番号の値の数と同じです。実際には、顧客メジャーは不要です。私のように、「フォーカスモード」をクリックして値を拡大表示することもできます。

図C

マトリックス視覚化では、郵便番号のリストと各郵便番号の顧客数が返されます。

郵便番号の値は18,485件あることは分かっていますが、これはCOUNTIFロジックではありません。郵便番号列の値を単純に数えるだけです。マトリックスには各メジャーの名前が表示されます。メジャーを作成する際は、メジャー名がヘッダーとして意味を持つように、この点に注意してください。

図 Cに示す結果のテーブルは、郵便番号メジャーが郵便番号ごとに条件付きカウントを返すため、COUNTIF ロジックを適用したものです。

さらに、フィールドペインから「顧客」をドラッグし、「行」リストの「郵便番号」フィールドの下にドロップします。図Dに結果を示します。各郵便番号の左側にプラス記号が表示されます。いずれかの郵便番号をクリックすると、その郵便番号に属するすべての顧客が表示されます。この機能は公開されれば、エンドユーザーが利用できるようになります。

図D

視覚化に顧客を追加します。

多くのエンドユーザーは、利益、損失、傾向などを明らかにするために、カウントメジャーに大きく依存しています。Power BI には COUNTIF() メジャーはありませんが、COUNTA メジャーと COUNTROWS メジャーを使用して同じロジックを適用できます。

Tagged: