メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。

集計は、データを折りたたみ、集計、またはグループ化する方法です。 テーブルや他のデータ ソースからの生データから始める場合、多くの場合、データはフラットです。つまり、詳細は多数存在しますが、何の方法でも整理またはグループ化されていない場合があります。 この概要や構造が不足すると、データ内のパターンを検出するのが難しくなる可能性があります。 データ モデリングの重要な部分は、特定のビジネス上の質問に対する回答としてパターンを簡略化、抽象化、または要約する集計を定義することです。

AVERAGE、COUNT、DISTINCTCOUNT、MAX、MIN、SUM などの最も一般的な集計は 、AutoSum を使用してメジャーに自動的に作成できます。 AVERAGEX、COUNTX、COUNTROWS、SUMX などの 他の種類の集計 ではテーブルが返され、Data Analysis Expressions (DAX)を使用して作成された数式が必要です。

PowerPivot での集計について

集計のグループの選択

データを集計する際には、製品、価格、地域、日付などの属性によってデータをグループ化してから、グループ内のすべてのデータに有効な数式を定義します。 たとえば、1 年間の合計を作成することは、集計の作成です。 一方、去年に対する今年の比率を作成し、それをパーセントで表すことも、別の種類の集計です。

データをグループ化する方法は、業務上の質問に基づいて決定します。 たとえば、集計を使用すると、以下の質問に答えることができます。

カウント   1 か月に何トランザクションが発生しましたか?

平均    販売担当者による今月の平均売上は何でしたか?

最小値と最大値    販売単位数の上位 5 位に入った販売地域は何ですか?

これらの質問に答えるための計算を作成するには、カウントまたは合計の対象となる数値を含む詳しいデータが必要であり、その数値データには、結果の分類に使用するグループと何らかの方法で関連づけられていることが必要です。

製品カテゴリや店舗が所在する地域の名称など、グループ化に使用できる値がまだデータに含まれていない場合は、カテゴリを追加することでデータにグループを追加できます。 Excel でグループを作成するときは、使用するグループを手動で入力するか、ワークシートの列から選ぶ必要があります。 しかし、リレーショナル システムでは、製品のカテゴリなどの階層はファクト テーブルや値テーブルとは別のテーブルに保存されていることが少なくありません。 通常、カテゴリ テーブルは何らかのキーでファクト データに連結しています。 たとえば、データに製品 ID が含まれていても製品名やそのカテゴリが含まれていなかったとします。 フラットな Excel ワークシートにカテゴリを追加するには、カテゴリ名を含む列をコピーする必要があります。 PowerPivot を使えば、製品カテゴリ テーブルをデータ モデルにインポートしたり、数字データを含むテーブルと製品カテゴリ一覧との間のリレーションシップを作成したり、それらのカテゴリを使用してデータをグループ化できます。 詳細については、「テーブル間の リレーションシップを作成する」を参照してください

集計用の関数の選択

使用するグループを決定し、追加したら、集計に使う数学関数を決める必要があります。 集計という用語は、合計、平均、最小、件数など、集計に使用される数学的または統計的演算と同じ意味で使われることがあります。 しかし PowerPivot では、PowerPivot と Excel の両方が備えている標準的な集計のほかに、集計のための数式を独自に作成できます。

たとえば、前の例で使用したのと同じ値とグループ化のセットで、以下の質問に答えるカスタム集計を作成できます。

フィルター処理されたカウント   月末のメンテナンス時間を除き、1 か月に何回のトランザクションが発生しましたか?

時間の平均を使用した比率    昨年の同じ期間と比較した売上の増加率または減少率は何でしたか?

グループ化された最小値と最大値    各製品カテゴリで上位にランク付けされた販売地域、または販売プロモーションごとにランク付けされた販売地域は何ですか。

数式とピボットテーブルへの集計の追加

データが意味を意味を持つようなグループ化方法と処理する値についておおよその方針が決まったら、ピボットテーブルを構築するのかテーブル内で計算を作成するのかを決めます。 PowerPivot は、Excel の従来の機能を拡張、改善することで、総計、件数、平均などの集計を作成できるようになりました。 カスタム集計は、[PowerPivot] ウィンドウ内、または Excel ピボットテーブル領域内の PowerPivot で作成できます。

  • 計算列で、現在の行のコンテキストを考慮する集計を作成して、別のテーブルから関連する行を取得してから、関連する行の値の合計、件数、平均などを計算できます。

  • メジャー では、数式内で定義されたフィルターと、ピボットテーブルのデザインとスライサー、列見出し、行見出しの選択によって適用されるフィルターの両方を使用する動的集計を作成できます。 標準の集計を使用したメジャーは、AutoSum を PowerPivot 数式を作成することで作成できます。 また、ピボットテーブルの標準集計を使用して暗黙的なメジャーを作成Excel。

ピボットテーブルへのグループ化の追加

ピボットテーブルをデザインするときは、グループ化、カテゴリ、または階層を示すフィールドをピボットテーブルの列および行のセクションにドラッグして、データを分類します。 次に、数値が含まれているフィールドを値の領域にドラッグし、件数、平均、合計などを計算できるようにします。

ピボットテーブルにカテゴリを追加しても、カテゴリ データがファクト データに関連していない場合は、エラーまたは異常な結果が生じる可能性があります。 PowerPivot は通常、自動的にリレーションシップを検出および提案することで問題を修正しようとします。 詳細については、「ピボットテーブルでのリレーションシップの操作」を参照してください。

また、フィールドをスライサーにドラッグして、表示する特定のデータ グループを選ぶこともできます。 スライサーを使用すると、結果をピボットテーブルで対話的にグループ化、並べ替え、およびフィルターできます。

数式のグループ化の操作

グループ化とカテゴリを使用すると、テーブル間のリレーションシップを作成してから、これらのリレーションシップを活用して関連する値を参照する数式を作成することによって、テーブルに保存されているデータを集計することもできます。

つまり、カテゴリ別に値をグループ化する数式を作成する場合は、最初にリレーションシップを使用して詳細データを含むテーブルとカテゴリを含むテーブルを関連付けてから、数式を作成します。

参照を使用する数式を作成する方法の詳細については、「PowerPivot の数式での参照」を参照してください。

集計でのフィルターの使用

PowerPivot の新機能の 1 つは、ユーザー インターフェイス上およびピボットテーブル内またはチャート内だけでなく、集計の計算に使用する数式内であっても、データの列とテーブルにフィルターを適用できる機能です。 フィルターは、計算列と s の両方の数式で使用できます。

たとえば、新しい DAX 集計関数では、合計や件数を計算する値を指定する代わりに、テーブル全体を引数として指定できます。 そのテーブルにフィルターを適用しないと、集計関数の対象は、テーブル内の指定した列のすべての値になります。 しかし、DAX でテーブルに動的フィルターまたは静的フィルターを作成し、フィルターの条件と現在のコンテキストに応じて集計の対象をデータの異なるサブセットにすることができます。

数式で条件とフィルターを組み合わせることで、数式に入力した値によって変わる集計や、ピボットテーブルの行見出しや列見出しの選択によって変わる集計を作成できます。

詳細については、「数式内でのデータのフィルター処理」を参照してください。

Excel の集計関数と DAX の集計関数との比較

次の一覧は、Excel の標準的な集計関数の一部で、PowerPivot でのこれらの関数の使用方法にリンクしています。 これらの関数の DAX バージョンは Excel バージョンとほぼ同じですが、構文と特定のデータ型の扱いに若干の違いがあります。

標準の集計関数

関数

用途

AVERAGE

列内のすべての数値の平均 (算術平均) を返します。

AVERAGEA

列内のすべての数値の平均 (算術平均) を返します。 テキスト値および数値以外の値も処理されます。

COUNT

列内の数値の数をカウントします。

COUNTA

列内の空ではない値の数をカウントします。

MAX

列の最大の数値を返します。

MAXX

テーブルに対して評価される一連の式から最大値を返します。

MIN

列の最小の数値を返します。

MINX

テーブルに対して評価される一連の式から最小値を返します。

SUM

列内のすべての数値を加算します。

DAX の集計関数

DAX には、集計を実行するテーブルを指定できる集計関数が含まれています。 したがって、これらの関数を使用すると、単に列内の値を加算したり、それらの値の平均を求めたりする代わりに、集計するデータを動的に定義する式を作成することができます。

次の表は、DAX で使用できる集計関数の一覧を示しています。

関数

用途

AVERAGEX

テーブルに対して評価される一連の式の平均を計算します。

COUNTAX

テーブルに対して評価される一連の式をカウントします。

COUNTBLANK

列内の空白値の数をカウントします。

COUNTX

テーブル内の行の総数をカウントします。

COUNTROWS

入れ子になったテーブル関数 (フィルター関数など) から返される行の数をカウントします。

SUMX

テーブルに対して評価される一連の式の合計を返します。

DAX の集計関数と Excel の集計関数の相違点

これらの関数の名前は Excel に対応する関数と同じですが、 PowerPivotのインメモリ分析エンジンを利用し、テーブルと列を使用するために書き換えされています。 ブック内で DAX 数式を使用Excel、その逆も同様です。 これらのプロパティは、データの PowerPivot 基づくピボットテーブルでのみ PowerPivot できます。 また、関数の名前は同じですが、動作が若干異なる場合があります。 詳細については、個々の関数リファレンス トピックを参照してください。

また、集計内で列が評価される方法は、Excel が集計を処理する方法とは異なります。 次の例を使用して説明します。

Sales テーブル内の Amount 列の値の合計が必要で、次の式を作成したとします。

=SUM('Sales'[Amount])

最も単純なケースでは、関数はフィルター処理されていない 1 つの列から値を取得し、結果は Excel の場合と同じです。これは常に列 Amount の値を合計します。 ただし、 PowerPivotでは、数式は "Sales テーブルの各行の Amount の値を取得し、それらの個々の値を合計します。 PowerPivot が実行される各行を評価し、各行に対して 1 つのスカラー値を計算した後、それらの値に対して集計を実行します。 そのため、フィルターがテーブルに適用されている場合、またはフィルター処理される可能性がある他の集計に基づいて値が計算される場合、数式の結果は異なる場合があります。 詳細については、「DAX の数式のコンテキスト」を参照してください。

DAX タイム インテリジェンス関数

前のセクションで説明したテーブル集計関数以外に、DAX には指定した日時を操作して組み込みのタイム インテリジェンスを提供する集計関数があります。 これらの関数は、日付の範囲を使用して関連する値を取得し、値を集計します。 日付範囲で値を比較することもできます。

次の表に、集計に使用できるタイム インテリジェンス関数を一覧にします。

関数

用途

CLOSINGBALANCEMONTH

CLOSINGBALANCEQUARTER

CLOSINGBALANCEYEAR

指定された期間の末日の値を計算します。

OPENINGBALANCEMONTH

OPENINGBALANCEQUARTER

OPENINGBALANCEYEAR

指定された期間の前の期間の末日の値を計算します。

TOTALMTD

TOTALYTD

TOTALQTD

期間の最初の日付から、指定された日付列に含まれる最も新しい日付までを対象に、値を計算します。

タイム インテリジェンス関数セクション (タイムインテリジェンス関数) の他の関数は、集計で使用する日付または日付のカスタム範囲を取得するために使用できる関数です。 たとえば、DATESINPERIOD 関数を使用して日付範囲を返し、その一連の日付を別の関数の引数として使用して、それらの日付だけを対象とするカスタム集計を計算できます。

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×