LuckyTemplates での日付テーブルの列の並べ替え

LuckyTemplates での日付テーブルの列の並べ替え

今日のブログでは、 LuckyTemplates フォーラムで常に寄せられる質問について説明します。拡張日付テーブル列のフィールドを適切に並べ替えるにはどうすればよいでしょうか? このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

エキスパートの 1 人である Melissa Dekorte によって開発された M コード ショーケースの拡張日付テーブルを指します。

このブログ投稿の例は、7 月に始まる会計年度で 2018 年から 2020 年まで実行される単純なアプリケーションです。メンバーは、月の名前を並べ替える方法を知りたいと考えていました。また、月に関連するフィールドの 1 つを並べ替えようとしていました。

これは、日付テーブルの列を効果的に並べ替える方法です。

LuckyTemplates での日付テーブルの列の並べ替え

拡張日付テーブルには多くのフィールドがあります。率直に言って、それらを整理整頓するのは難しい場合があります。

これが、特定の日に各フィールドがどのように見えるか、その形式と内容を示すこのチートシートを作成した理由です。

ほとんどの場合、これを使用して、あるフィールドを別のフィールドに基づいて並べ替える方法を理解できます。

LuckyTemplates での日付テーブルの列の並べ替え

私たちは月の名前を持っていますが、フォーラムのメンバーはそれを整理するためにMonthnyearを使用しようとしていました。

拡張日付テーブルで月の名前を見つけてみましょう。[フィールド] ペインで[月名]を選択し、[列による並べ替え]に移動して、Monthnyearを探します。

LuckyTemplates での日付テーブルの列の並べ替え

これをクリックすると、Month Name の同じ値に対して Monthn Year に複数の値を含めることはできないというエラー メッセージが表示されます。

LuckyTemplates での日付テーブルの列の並べ替え

これは粒度の問題に帰着します。並べ替えようとしているフィールドと並べ替えに使用しているフィールドの間には 1 対 1 の関係が必要です。

この場合、2018、2019、および 2020 の特定の月について、Monthnyearフィールドに 3 つの異なる値を設定できます。このため、1 対 1 の関係を持つものを見つける必要があります。

チートシートに戻ると、Monthofyear が単なる月の数値であることがわかります。これにより、私たちが探している 1 対 1 の関係が得られます。これは、1 月は 1、2 月は 2 などに対応することを意味します。

「列で並べ替え」をクリックし、「年の月」で並べ替えると、フィールドまたはテーブルの列が適切に並べ替えられます。

LuckyTemplates での日付テーブルの列の並べ替え

LuckyTemplates での日付テーブルの列の並べ替え

次の月と年は少し難しくなります。これは、短い月と年を含む複合フィールドです。

LuckyTemplates での日付テーブルの列の並べ替え

まず年ごとに並べ替え、次に月ごとに並べ替えるものを見つける必要があります。[フィールド] ペインで[Monthnyear]をクリックし、 [列で並べ替え]に移動すると、最初に使用しようとしたMonthnyear が完全に一致します。

LuckyTemplates での日付テーブルの列の並べ替え

Month & Year テーブル列では、すべてが完全にソートされていることがわかります。

LuckyTemplates での日付テーブルの列の並べ替え

これで最初の 2 つが完了しました。しかし、最後は本当に行儀の悪い分野です。

LuckyTemplates での日付テーブルの列の並べ替え

これにはいくつかの理由から問題があります。2 つのテキスト フィールドが連結されており、会計月フィールドは埋め込まれていません。

最終的には、 4 桁の会計年度があり、その後に 2 桁の会計月が埋め込まれた、このMonthnyearと同様のものを実現したいと考えています。

LuckyTemplates での日付テーブルの列の並べ替え

これを行う最も簡単な方法は、パワー クエリを使用することです。

「データの変換」に進みます。

LuckyTemplates での日付テーブルの列の並べ替え

次に、Dates テーブルに移動し、カスタム列を追加します。

LuckyTemplates での日付テーブルの列の並べ替え

このカスタム列を「会計年度会計月ソート (FYFM ソート)」と呼びましょう。

LuckyTemplates での日付テーブルの列の並べ替え

まず、テキストの接頭辞 (年の最初の 2 桁を表す 20) を指定し、それをTex.Middleという関数と連結します。この関数は、より大きなテキスト文字列から部分文字列を抽出します。これはDAX 関数 MIDに似ていますが、この 2 つの違いを説明します。

LuckyTemplates での日付テーブルの列の並べ替え

これを会計年度フィールドで使用します。

LuckyTemplates での日付テーブルの列の並べ替え

DAX では、部分文字列を取得する場合、1 から始まるインデックスが使用されます。3 番目の文字を取得するには、3 を使用する必要があります。パワー クエリでは、これは 0 から始まるインデックスなので、3 番目の文字は 012 になります。

3 番目の文字である 2 から始めます。会計年度フィールドから 2 番目の数字のペアを取得するために、2 つの文字を返したいと考えています。

LuckyTemplates での日付テーブルの列の並べ替え

次のステップでは、これをパッドされた会計月フィールドと連結します。

DAX では、LENGTH 関数と IF 関数を使用する必要があるため、手動でパディングできます。

パワークエリには、そのすべてを実行する関数があります。これはText.PadStartです。

会計期間は数値フィールドであるため、 Text.Fromという関数を使用して、数値を埋め込み可能なテキスト値に変換する必要があります。次に、会計期間フィールドを取得します。

LuckyTemplates での日付テーブルの列の並べ替え

文字が 2 つあることを確認したいと思います。1 文字の場合は 0 で埋められます。

LuckyTemplates での日付テーブルの列の並べ替え

「OK」ボタンをクリックすると、4 桁の会計年度が表示され、次に 2 桁が埋め込まれた会計月が表示されます。

LuckyTemplates での日付テーブルの列の並べ替え

次に、 「ホーム」に戻り、「閉じて適用」をクリックします。

FM & FY フィールドを列ごとに並べ替えると、会計年度、会計月の順に完全に並べ替えられるようになります。

LuckyTemplates での日付テーブルの列の並べ替え

結論

このブログでは、LuckyTemplates で日付テーブルの列を並べ替える方法について説明しました。これは、いくつかのカスタム関数を構築することから得られた、難しい分野に適した戦略です。この一般的なツール セットが独自のレポート開発に役立つことがわかっていただければ幸いです。

まだ登録していない場合は、LuckyTemplates TVチャンネルに登録してください。今後、さらに多くのコンテンツが公開される予定です。

乾杯!


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