LuckyTemplates で永続的に更新される実践データセットを作成する

LuckyTemplates で永続的に更新される実践データセットを作成する

更新するたびに練習データセットを更新し続ける方法を説明します。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

本当に DAX スキルを向上させたい場合は、DAX を使用して実践するのが最善の方法です。そのためには、起こり得る現実のシナリオを視覚化し、それに取り組むのに役立つ練習用データセットが必要です。

練習用データセットの問題は、データが通常静的であることです。効率的に練習するには、データが生きているという印象を与える必要があります。

目次

練習用データセットのファイル パスのセットアップ

サンプル データとして、2014、2015、2016 年の売上データを含む Excel ファイルがあります。

LuckyTemplates で永続的に更新される実践データセットを作成する

これは更新する必要があるデータです。

ドキュメントの場所は、クイック アクセス ツールバーにあります。

LuckyTemplates で永続的に更新される実践データセットを作成する

ファイルパスのパラメータを設定するにはこれが必要です。そこで、そのドキュメントの場所をコピーします。

その右側にクイック アクセス ツールバーへのアクセス ポイントがあります。

LuckyTemplates で永続的に更新される実践データセットを作成する

それを押すと、この画面が表示されます。

LuckyTemplates で永続的に更新される実践データセットを作成する

そこで、 [すべてのコマンド]を選択し、[ドキュメントの場所]を選択します。それをクイック アクセス ツールバーに追加し、[OK] を押します。

次に、 Power Queryに移動して、ファイル パスを保持するパラメーターを作成します。この手順は、別のユーザーがファイルの場所を変更した場合にモデル内のすべてのクエリを復元できるため、重要です。

そこで、新しいパラメータを作成します。

LuckyTemplates で永続的に更新される実践データセットを作成する

これをFileLocationと呼ぶことにします。

LuckyTemplates で永続的に更新される実践データセットを作成する

[タイプ] で[Text]を選択します。[現在の値]には、前にコピーしたドキュメントの場所を貼り付けます。

LuckyTemplates で永続的に更新される実践データセットを作成する

新しいクエリを作成してみます。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、練習用データセットとして使用するサンプル データを選択します。

LuckyTemplates で永続的に更新される実践データセットを作成する

2014、2015、2016 年の Sales データがあるため、ここではさまざまなテーブルが表示されます。最初のテーブルであるSales_2014を選択するだけです。

LuckyTemplates で永続的に更新される実践データセットを作成する

Sales_2014 データを選択したので、ハードコーディングされたファイルの場所を動的なファイルの場所に変更します

LuckyTemplates で永続的に更新される実践データセットを作成する

詳細エディターに移動し、ファイルの場所に関連するものをすべて選択します

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、これを前に作成した FileLocation パラメーターに変更します

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、[完了] を押して、これらの変更を Sales_2014 クエリにロックします。

データ準備フォルダーの作成

Sales_2014 クエリの適用されたステップを見て、ナビゲーションステップをクリックします。これにより、 Sourceステップを参照していることがわかります。

LuckyTemplates で永続的に更新される実践データセットを作成する

また、Tableとして示されているSales_2014も参照しています。また、Data 列からデータを抽出していることも示しています。

さて、次にソースステップを見てみましょう。

LuckyTemplates で永続的に更新される実践データセットを作成する

「ソース」ステップでは、Excel ファイルに存在するすべての内容が表示されますこれらの座標を確認すると、 Sales_2014 が表示され、Kind の下にTableと表示されます。

LuckyTemplates で永続的に更新される実践データセットを作成する

データ列を参照すると、抽出されたTableオブジェクトが表示されます。

LuckyTemplates で永続的に更新される実践データセットを作成する

したがって、このクエリを複製して 2015 年のデータを得ることができます。これを行うには、Sales_2014 を右クリックし、[複製] を選択するだけです。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、ナビゲーション ステップに戻ります。

LuckyTemplates で永続的に更新される実践データセットを作成する

その年を 2014 年から 2015 年に変更します。

LuckyTemplates で永続的に更新される実践データセットを作成する

ここの「プロパティ」の下の名前も変更します。これを Sales_2015 と呼びます。

LuckyTemplates で永続的に更新される実践データセットを作成する

今回は Sales_2015 を複製します。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、ナビゲーション ステップに戻り、年を 2016 に変更します。

LuckyTemplates で永続的に更新される実践データセットを作成する

これで完全な売上データが手に入りました。ただし、これらのクエリをモデルにロードすべきではありませんそれぞれを右クリックし、 [読み込みを有効にする] の選択を解除するだけです。

LuckyTemplates で永続的に更新される実践データセットを作成する

ここで、すべてのクエリを選択し、それらを 1 つのフォルダーに配置して、物事をより整理してみます。

LuckyTemplates で永続的に更新される実践データセットを作成する

このフォルダーをData Prepと呼びます。

LuckyTemplates で永続的に更新される実践データセットを作成する

日のオフセットを取得する

ここの「データ準備」のサンプル データは静的になります。これは、最初と最後の日付は決して変更されないことを意味します。

LuckyTemplates で永続的に更新される実践データセットを作成する

そこで、 Sales_2016に移動し、 Order Date列を降順で並べ替えて、このデータ セットから最後の日付を取得します

LuckyTemplates で永続的に更新される実践データセットを作成する

このデータセットの最後の日付は2016 年 12 月 31 日です。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、新しいクエリを作成します。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、データ セットの最後の日付から今日までのDay Offsetを確認します。つまり、今日が何なのかを知る必要があります。これを行うには、関数DateTime.FixedLocalNowを使用します。これにより、作業しているマシンからの日付と時刻が得られます。

LuckyTemplates で永続的に更新される実践データセットを作成する

しかし、ここでは時間の部分は特に必要ありません。 この値の日付部分のみが必要です。

LuckyTemplates で永続的に更新される実践データセットを作成する

そこで、 Date.From を使用して日付を抽出します。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、その値からデータ セットの最後の日付を減算します。データは静的であるため、組み込みの日付値を使用できます。これが #date であり、2016 年 12 月 31 日を参照します。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、この差から数値を抽出する必要があります。そこで、 Number.From を追加し、括弧で閉じます。次に、Enter キーを押します。

LuckyTemplates で永続的に更新される実践データセットを作成する

これの名前をDayOffsetに変更します。

LuckyTemplates で永続的に更新される実践データセットを作成する

動的な日付範囲の設定

日付テーブルには動的な日付範囲も必要です。まず、Data Prep フォルダーを右クリックし、新しい空のクエリを作成します。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、 Date テーブルのStart Dateを操作します。

私は常に年の 1 日を開始日としたいと考えています。そこで、等号を付けて関数Date.StartOfyearを使用します。

LuckyTemplates で永続的に更新される実践データセットを作成する

これに値を与える必要があるため、 Date.AddDays を使用してそれをオフセットします。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、組み込みの日付値を再度使用し、データ セットの最初の日付 ( 2014 年 6 月 1 日) を使用します。

LuckyTemplates で永続的に更新される実践データセットを作成する

DayOffset で計算した日数も必要なので、それを追加します。

LuckyTemplates で永続的に更新される実践データセットを作成する

Enter キーを押すと、 2017 年 1 月 1 日が表示されます。これが日付テーブルの最初の日付になります。

LuckyTemplates で永続的に更新される実践データセットを作成する

その名前をfxStartDateに変更します。

LuckyTemplates で永続的に更新される実践データセットを作成する

これで、終了日を設定できるようになりました。開始日に使用したこの構文をコピーします。

LuckyTemplates で永続的に更新される実践データセットを作成する

新しい空のクエリを作成します。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、名前をfxEndDateに変更します。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、 Start Date の構文を貼り付けます。

LuckyTemplates で永続的に更新される実践データセットを作成する

StartOfyearの代わりに、これを EndOfyear に変更します

LuckyTemplates で永続的に更新される実践データセットを作成する

また、データ セットの最後の日付である12 月 31 日を使用します。

LuckyTemplates で永続的に更新される実践データセットを作成する

Enter キーを押すと、2020 年 12 月 31 日が返されます。

LuckyTemplates で永続的に更新される実践データセットを作成する

単一の売上テーブルの作成

3 つのテーブルを 1 つの Sales テーブルに結合します。そのために、新しいクエリを作成します。

LuckyTemplates で永続的に更新される実践データセットを作成する

これをSalesテーブルと呼びます。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、Sales_2014、Sales_2015、Sales_2016 を1 つのテーブルに結合します。

リボンから実行できることはわかっていますが、数式バーで直接実行するオプションもあります。私は 2 番目のオプションを選択します。

Table.Combineから始めます。

LuckyTemplates で永続的に更新される実践データセットを作成する

Table.Combine にはテーブルのリストが必要ですそこで、中括弧であるリスト初期化子を追加し、 3 つのクエリに名前を付けます。その後 Enter を押してください。

LuckyTemplates で永続的に更新される実践データセットを作成する

注文日列の変換

必要な要素のほとんどが揃ったので、後で動的練習データセットを完成させるために使用する構文の重要な部分を生成します。

まず 2 つの数値列を選択します。配送地域インデックス商品説明インデックスを使用できます。Shift キーまたは Ctrl キーを押して両方の列を選択できます。

LuckyTemplates で永続的に更新される実践データセットを作成する

[変換]タブで、 [絶対値]を選択します。

LuckyTemplates で永続的に更新される実践データセットを作成する

数式バーを見ると、Table.TransformColumns関数が表示されます。これが最終的な解決への鍵です。

LuckyTemplates で永続的に更新される実践データセットを作成する

この関数は変換リストのリストを受け取ります。ご覧のとおり、ここには 2 つのリストが互いに入れ子になっています。

LuckyTemplates で永続的に更新される実践データセットを作成する

列名をテキストとして参照します。そのため、ここでは第 1 セットで配達地域インデックスが参照されました。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、変換ステップを追加します

LuckyTemplates で永続的に更新される実践データセットを作成する

[製品説明インデックス]列の別のリストでも同じことを行います。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、高度なエディターに進みます

LuckyTemplates で永続的に更新される実践データセットを作成する

絶対値は必要ありません。したがって、最初にやることは日付をオフセットすることです。これを行うために、 fxUpdateDateという関数を作成します。現在の日付を使用するので、 cDateとして入力します。

LuckyTemplates で永続的に更新される実践データセットを作成する

次に、 cDateも使用するDate.AddDays関数を再度使用します。前に作成したDayOffsetも使用します。

LuckyTemplates で永続的に更新される実践データセットを作成する

fxUpdateDate が行うことは日付を取得することだけです。したがって、これをTable.TransformColumns関数に渡すと、各記録日のチェックが開始されます。

したがって、たとえば、ここで 1 行目を作業している場合、2014 年 6 月 1 日が cDate として考慮されます。

LuckyTemplates で永続的に更新される実践データセットを作成する

そして、関数が呼び出されるたびに、作成した DayOffset が追加されます。

LuckyTemplates で永続的に更新される実践データセットを作成する

これで、 Table.Transform ステップが[計算された絶対値]に表示されます。

LuckyTemplates で永続的に更新される実践データセットを作成する

まず名前を変更して、UpdateOrderDate と呼びます

LuckyTemplates で永続的に更新される実践データセットを作成する

このUpdateOrderDateステップには、 Sourceと等しいTable.TransformColumnsが含まれます

LuckyTemplates で永続的に更新される実践データセットを作成する

リストされる最初のテーブルは、配信地域インデックスです。しかし、それを変える必要はありません。そこで、参照されている最初の列をOrderDate列に変更します。

LuckyTemplates で永続的に更新される実践データセットを作成する

ここでは、変換は絶対値で行われるとも述べています。

LuckyTemplates で永続的に更新される実践データセットを作成する

これは望ましくないので、これをfxUpdateDateに変更します。

LuckyTemplates で永続的に更新される実践データセットを作成する

型も絶対値にはならないのでこの部分も変更する必要があります。

LuckyTemplates で永続的に更新される実践データセットを作成する

それを日付に変換します。

LuckyTemplates で永続的に更新される実践データセットを作成する

必要な変換は 1 つだけなので、2 番目のリストとそのセットに付属する変換ステップを削除します。

LuckyTemplates で永続的に更新される実践データセットを作成する

…つまり、これは OrderDate 列の 1 つの変換にすぎません。

LuckyTemplates で永続的に更新される実践データセットを作成する

計算された絶対値のステップの名前を変更したため、in ステートメントでもその名前を変更する必要があります。

LuckyTemplates で永続的に更新される実践データセットを作成する

UpdateOrderDateも表示されるようになりました。

LuckyTemplates で永続的に更新される実践データセットを作成する

したがって、OrderDate 列は、 Table.TransformColumns のレコードごとにこの関数を呼び出すようになります

「注文日」列を見ると、これが更新されていることがわかります。

LuckyTemplates で永続的に更新される実践データセットを作成する

これを降順に並べ替えると、現在の日付として2020 年 7 月 7 日が表示されます。

LuckyTemplates で永続的に更新される実践データセットを作成する

実際には必要がないので、その並べ替えステップを削除します。現在の日付も更新されているかどうかを確認するためにこれを行っただけです。

LuckyTemplates で永続的に更新される実践データセットを作成する

M コードを使用したタイム インテリジェンスの適用

私のモデルはすべて売上データに関するものです。タイム インテリジェンスを実行するつもりなので、Dateテーブルが必要になります。

に行きます。M コード ショーケースでは、拡張日付テーブルのトピックを取り上げます。

LuckyTemplates で永続的に更新される実践データセットを作成する

ページの一番上までスクロールして、コード全体をコピーします

LuckyTemplates で永続的に更新される実践データセットを作成する

モデルに戻り、新しい空のクエリを作成しその M コードを に貼り付けます。「完了」を押します。

LuckyTemplates で永続的に更新される実践データセットを作成する

このクエリの名前をfxCalendarに変更します。

LuckyTemplates で永続的に更新される実践データセットを作成する

パラメーターには、StartDate に 1 月 1 日を、EndDate に 1 月 31 日を使用します。次に、「呼び出し」を押します。

LuckyTemplates で永続的に更新される実践データセットを作成する

テーブルが表示されたら、その名前をDatesに変更します。

LuckyTemplates で永続的に更新される実践データセットを作成する

サンプル データセットの最初の日付を確認し、それを DayOffset でオフセットすることで、開始日と終了日をすでに作成していることを思い出してください。したがって、ここでの fxStartDate は 2017 年 1 月 1 日として表示されます

LuckyTemplates で永続的に更新される実践データセットを作成する

fxEndDate に関しては、2020 年 12 月 31 日が返されます

LuckyTemplates で永続的に更新される実践データセットを作成する

Datesテーブルに戻って、そこでその Source ステップを更新することもできます。

LuckyTemplates で永続的に更新される実践データセットを作成する

パラメータが呼び出された順序でリストされます。最初のパラメータには開始日を表示する必要があります。

LuckyTemplates で永続的に更新される実践データセットを作成する

これをfxStartDateに変更します。

LuckyTemplates で永続的に更新される実践データセットを作成する

2 番目のパラメータも置き換えます。

LuckyTemplates で永続的に更新される実践データセットを作成する

fxEndDateを入れます。

LuckyTemplates で永続的に更新される実践データセットを作成する

Enter キーを押すと、変換が完了します。これで、常に最新の状態に保たれる完全に最新の練習用データセットが手に入りました。

LuckyTemplates で永続的に更新される実践データセットを作成する

[閉じて適用]をクリックして、すべての手順をロックします。

LuckyTemplates で永続的に更新される実践データセットを作成する


LuckyTemplates で動的日付クエリ テーブルを作成する: クエリ エディターのチュートリアル拡張日付テーブルでのオフセット関数を使用した
Power Query 日付テーブルの動的な開始日と終了日の設定

結論

前に述べたように、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 ゲートウェイとは何ですか? 知っておくべきことすべて