LuckyTemplates での DAX テーブル関数の使用

LuckyTemplates での DAX テーブル関数の使用

ここでは、テーブル関数と呼ばれる LuckyTemplates の関数のグループを紹介したいと思います。これらの関数には、すでに使用したか、他のトピックで言及した 含まれます。

などの関数を含む、他にもさまざまなテーブル関数があります。ただし、それらすべてを取り上げるわけではありません。

これらの関数をより深く理解したい場合は、をダウンロードし、より具体的な質問についてはを確認することをお勧めします。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

目次

テーブル関数の動作の視覚化

この記事で説明したいのは、テーブル関数がどのように機能するかです。

この例を見ると、このFILTER関数がバックグラウンドで実際に何をしているのかを想像するのは困難です。

LuckyTemplates での DAX テーブル関数の使用

これは、 FILTER関数を呼び出すときに、バックグラウンドで作成されているテーブルを確認する方法がないためです。

ただし、代わりに、数式だけを含む新しいテーブルを作成することもできます。

まず、Sales テーブルを複製した例のように、新しいテーブルを作成するときにテーブル名を入力するだけでテーブルを複製できます。

LuckyTemplates での DAX テーブル関数の使用

ただし、ここではテーブル関数を使用することもできます。ここで行うのは、FILTERを使用し、 Sales テーブルに入力し、フィルター式として機能するQuantity 列を 2 より大きく設定することです。

LuckyTemplates での DAX テーブル関数の使用

元のSales テーブルには約15,000行がありますが、Quantity が 2 より大きい結果のみを表示するように結果がフィルタリングされているため、現在は4,700 行のみになっています。

別の例を示すために、 FILTER関数再度使用し、Products テーブルを挿入し、 Product Name 列をフィルター式として使用し、それを「Product 100」に設定して、 1 つの製品を含むテーブルを返します。

LuckyTemplates での DAX テーブル関数の使用

これは、このテーブル内で数式が実行されているときに舞台裏で起こっていることです。

LuckyTemplates での DAX テーブル関数の使用

まず、顧客名列を通じて評価コンテキストが適用されました。次に、そのProduct テーブルをProduct 100だけに削減することで追加のコンテキストを提供するためにFILTER関数が追加されました。

その後、Product 100がバックグラウンドでフィルタリングされ、Sales テーブルとのリレーションシップに自動的に流れ、最終的にProduct 100 のみの Sales テーブルが返されます。

LuckyTemplates での DAX テーブル関数の使用

VALUES 関数の例

LuckyTemplates のもう 1 つのテーブル関数であるVALUESを紹介します。この関数は、一意の値を含む 1 列のテーブルを返します

たとえば、 Dates テーブル内で、月だけのテーブルを取得できます。

これを行うには、 VALUES関数を使用して、 Dates テーブルMonthName 列を入力するだけです。

LuckyTemplates での DAX テーブル関数の使用

もう 1 つできることは、VALUES関数をメジャー内に置くことです。しかし、繰り返しになりますが、生成されるテーブルを実際に見ることができないため、メジャー内のプロセスを認識するのは困難です。

そのため、これは、これらのテーブル関数が実際にどのように機能するかを評価するのに適した方法です。

しかし、各個人の平均月間売上高を計算したい場合はどうなるでしょうか?

これまでに触れてきたものをどのように組み合わせるかが分からなければ、それを行う方法はすぐにはわかりません。

ここでは、 「Average Monthly Sales」という新しいメジャーを作成します。平均を扱っているので、 関数の使用が最初に思い浮かぶでしょう。

ただし、月次レベルで平均を評価するには反復関数が必要であるため、実際にはここで関数を使用する必要があります。

LuckyTemplates での DAX テーブル関数の使用

反復関数内では、最初のパラメータとしてテーブルを入力できます。ただし、使用できるのは物理テーブルだけではありません。テーブル関数も使用できます。

VALUES はテーブル関数であるため、これを使用してDates テーブルMonthInCalendar 列を挿入します。

反復関数はテーブルを反復処理し、VALUESからMonthInCalendarまでで形成されたテーブルには months と years の一意の値が含まれます。

代わりにMonthName列を使用しただけでは、異なる年にわたって機能しないため、 MonthInCalendarを使用する必要があります。

メジャーの作成を完了するには、式として機能するVALUESの後にTotal Salesを入力します。

LuckyTemplates での DAX テーブル関数の使用

混乱を避けるために、 「データ」画面に移動し、「日付」テーブルを選択し、「MonthInCalendar」の名前を「Month & Year」に変更します。

LuckyTemplates での DAX テーブル関数の使用

次に、 [列で並べ替え]をクリックし、 MonthIn Year 列で並べ替えて、正しく並べ替えられていることを確認します。

LuckyTemplates での DAX テーブル関数の使用

最後に、新しいAverage Monthly Salesメジャーをドラッグ アンド ドロップして、値を確認できるようになりました。

LuckyTemplates での DAX テーブル関数の使用

これまでの作業を確認するために、VALUES関数は一意の値の列を返します。

顧客の現在のコンテキストは、まず[顧客名] 列から取得されます。次に、舞台裏で、month と year の一意の値を含む 1 列のテーブルを作成しました。

AVERAGEX内で、私は月と年を繰り返して、各顧客がその月と年で得た総売上高を計算しました。これらの売上は月ごとにメモリに保存されます。

最後に、これらすべての計算結果が最終的に平均されて、平均月次売上が得られます。

このプロセスは、月と年の代わりにVALUESの中に年を入れて平均年間売上高を計算できるため、非常に多用途です。

さらに、日付だけを使用することに限定されるわけではありません。代わりに製品名 を入力して、製品ごとの平均売上を見つけることもできます。

これらの手法を組み合わせることで、独自の計算をすばやく見つけることができます。

ALL関数の例

LuckyTemplates のもう 1 つのテーブル関数であるALLを紹介します。これは、削除フィルター関数とも呼ばれます。

この関数は、多くの点でVALUES関数の逆のように機能します。

例を示すために、 All Customer Salesという新しいメジャーを作成し、CALCULATE関数を使用して、式としてTotal Salesを入力します。

次に、 ALL関数を使用して、Customers テーブルにテーブルまたは列を含めることができます。

新しいメジャーをドラッグすると、 Total Sales の下の Totalと同じ値が表示されることに気づくかもしれません。

LuckyTemplates での DAX テーブル関数の使用

基本的に、ALL関数は、 Customers テーブルの現在のコンテキストにあるフィルターをすべて削除します。

現在のコンテキストには顧客名があるため、 ALL関数はCustomers テーブルのフィルターを無視し、代わりにすべての結果の合計を返しました。


CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル
DAX 言語で関数を反復する – 詳細な例
LuckyTemplates テーブルを最適化するための高度なヒント

結論

いくつかの主要なテーブル関数と、それらが LuckyTemplates 内でどのように機能するかについて説明しました。

これらの関数の多くは実際に同じ式で組み合わせることができるため、これらの関数をよく理解することが重要です。

数式の組み合わせに慣れ始めると、より興味深い計算を作成できるようになります。

ではごきげんよう、


Python における Self とは: 実際の例

Python における Self とは: 実際の例

Python における Self とは: 実際の例

RでRDSファイルを保存してロードする方法

RでRDSファイルを保存してロードする方法

R の .rds ファイルからオブジェクトを保存および読み込む方法を学習します。このブログでは、R から LuckyTemplates にオブジェクトをインポートする方法についても説明します。

最初の N 営業日の再考 – DAX コーディング言語ソリューション

最初の N 営業日の再考 – DAX コーディング言語ソリューション

この DAX コーディング言語チュートリアルでは、GENERATE 関数の使用方法とメジャー タイトルを動的に変更する方法を学びます。

LuckyTemplates のマルチスレッド動的ビジュアル手法を使用したインサイトのショーケース

LuckyTemplates のマルチスレッド動的ビジュアル手法を使用したインサイトのショーケース

このチュートリアルでは、マルチスレッド動的ビジュアル手法を使用して、レポート内の動的データ視覚化から洞察を作成する方法について説明します。

LuckyTemplates のフィルター コンテキストの概要

LuckyTemplates のフィルター コンテキストの概要

この記事では、フィルター コンテキストについて説明します。フィルター コンテキストは、LuckyTemplates ユーザーが最初に学習する必要がある主要なトピックの 1 つです。

LuckyTemplates Online Service でアプリを使用する際の最良のヒント

LuckyTemplates Online Service でアプリを使用する際の最良のヒント

LuckyTemplates Apps オンライン サービスが、さまざまなソースから生成されたさまざまなレポートや分析情報の管理にどのように役立つかを示したいと思います。

時間の経過に伴う利益率の変化を分析する – LuckyTemplates と DAX を使用した分析

時間の経過に伴う利益率の変化を分析する – LuckyTemplates と DAX を使用した分析

LuckyTemplates でのメジャー分岐や DAX 数式の結合などの手法を使用して、利益率の変化を計算する方法を学びます。

DAX Studio でのデータ キャッシュのマテリアライゼーションのアイデア

DAX Studio でのデータ キャッシュのマテリアライゼーションのアイデア

このチュートリアルでは、データ キャッシュの具体化のアイデアと、それが結果を提供する際の DAX のパフォーマンスにどのように影響するかについて説明します。

LuckyTemplates を使用したビジネス レポート

LuckyTemplates を使用したビジネス レポート

これまで Excel を使用している場合は、ビジネス レポートのニーズに合わせて LuckyTemplates の使用を開始するのに最適な時期です。

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて

LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて