Python における Self とは: 実際の例
Python における Self とは: 実際の例
このブログでは、 YYWWD コードをDate Valueに変換する方法について説明します。メンバーの質問への回答に基づいています 。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。
メンバーは、年、週、曜日の形式である配達確認日フィールドを日付フィールドに変換する方法を求めました。
この例では、メンバーはコード 20145 を 2020-04-03 に変換する必要があると説明しています。このことから、最初の 2 桁が年に対応し、次の 2 桁が週番号に対応し、最後の桁が曜日に対応すると結論付けることができます。
クエリに対処する方法についてはすでにわかったので、始めましょう。
目次
適切な日付値を得るためにコードを分割する
作業を簡単にするために、Power Query エディターにデータをロードしましょう。
データを Power Query にロードしたときに最初に気づいたのは、以下に示すように、タイプの変更ステップがすぐに作成されたことです。
これは必要ないので、横にある [X] ボタンをクリックしてこのステップを削除できます。
ここで、コードを年、週、曜日ごとに別々の列に分割してみましょう。
年列
前に述べたように、コードの最初の 2 桁は日付値の年に対応します。
年の別の列を追加するには、[確認済みの配達日]列が選択されていることを確認する必要があります。これを行うには、[列の追加] タブに移動し、[抽出]をクリックして、[最初の文字]を選択します。
年の列には最初の 2 桁だけが必要なので、[カウント] タブに「2」と入力し、[OK] をクリックします。
次に、数式バーを編集して新しい列を変更しましょう。したがって、列名を変更するには、数式バーの最初の文字を年に変更します。これを適切な年の値に変えるために、それぞれの値に 2000 を加えましょう。
式を変更すると、型の不一致によりエラーが発生することに注意してください。
エラー メッセージには、演算子 + を数値およびテキスト型の値に適用できないことが示されています。
これを修正するには、テキスト値が数値に変換されるように数式を編集する必要があります。これを行うには関数Number.fromを使用し、後続の部分を括弧で囲みます。次に、戻り値の型をテキストから数値に変更します。
週のコラム
コードから週番号を抽出しましょう。
もう一度、 「確認済み配達日」列が選択されていることを確認し、「列の追加」タブに移動して「抽出」をクリックし、「範囲」を選択します。
Power Query はゼロベースであるため、コードの 3 桁目と 4 桁目を取得するには、0 からカウントを開始する必要があります。これは、コードの 3 桁目を取得するには、範囲が 2 から始まる必要があることを意味します。
週番号のコードには 2 桁しか必要ないため、[文字数] フィールドに 2 を入力します。
ここでも同じロジックが当てはまります。列ラベルを適切な名前に変換するには、数式バーで「テキスト範囲」を「週」に変更します。
また、数式にNumber.from関数を追加し、後続の部分をかっこで囲み、戻り値の型を数値に変更します。
曜日コラム
日の列には、コードの最後の桁のみが必要です。これを抽出するには、[確認済み配達日]列を選択し、[列の追加] タブに移動して、[抽出] を選択し、[最後の文字]をクリックします。
抽出する必要があるコードには 1 桁しか残っていないため、1 を入力します。
先ほどと同様に、数式バーで最後の文字を「日」に変更し、新しい列に適切な名前が付けられるようにします。
もう一度、Number.from関数を追加し、数式の次の部分をかっこで囲み、戻り値の型を数値に変更します。
日付値を取得するための 3 方向ルックアップ
カレンダー テーブルから 1 つの日付を取得するためのコンポーネントがすべて揃ったので、あとは3 方向ルックアップを実行するだけです。
これを行うには、[ホーム] タブに移動し、[クエリのマージ] を選択します。
Dates テーブルと結合するので、ドロップダウン タブをクリックして Dates を選択します。
ペアの識別
次に、一緒に属するペアを特定します。
上の表から年の列を選択し、それを下の表の年の列とペアにします。
別のペアを選択するには、キーボードの Ctrl ボタンを押して、上の表から週の列を選択し、それを下の表の週番号の列とペアにします。
最後に、Ctrl ボタンを押したまま、上の表から日列を選択し、それを下の表の DayInWeek 列とペアにします。
列が正しくペアになっていることを確認するには、インデックス番号が互いに一致するかどうかを確認します。
以下に示すように、年列にはインデックス 1、週列にはインデックス 2、日列にはインデックス 3 が必要です。
適切な日付値の取得
必要なのは日付列のみであるため、他のすべての列の選択を解除し、以下に示すように日付列をオンのままにします。
ご覧のとおり、新しい日付列の最初の値は 4-4-2020 です。ただし、フォーラムでは、コード 20145 は 3-4-2020 に変換される必要があることに注意してください。
これは、日付テーブルを調べると、DayInWeek 列のカウントが 1 から 7 ではなく 0 から 6 で始まっていることがわかるためです。
「日」列からの減算
これを修正するには、日列のすべての値から 1 を減算します。
[適用されたステップ] セクションで、日列を追加したステップをクリックします。これは「最後の文字の挿入」ステップでした。
数式バーで、かっこの直後に 1 を減算します。
これを実行すると、日付列にすでに正しい値が入っていることがわかります。
最後に、最後に行う必要があるのは、不要になった列をクリーンアップして削除することです。
これを行うには、[列の選択] を選択し、他のすべての選択を解除し、[確認済み配達日] 列と日付列をオンのままにします。
これで完了です!作業の結果は次のようになります。
LuckyTemplates で現在日または特定の日付までの結果を表示する LuckyTemplates の計算列を使用して��カスタム会計年度および四半期による
前方フィルター データの予測から年初から現在までの結果を表示できないようにする
結論
このブログでは、年、週、曜日形式のコードを適切な日付値に変換しました。コードを分割し、そこから 3 つの列を作成しました。3 方向ルックアップを使用して、これらの列を結合して、単一の日付値を取得しました。
サポート フォーラムで問題に対処するために使用した手法は、他のシナリオでも使用できます。したがって、それらをよく理解してください。
ではごきげんよう、
メリッサ
Python における Self とは: 実際の例
R の .rds ファイルからオブジェクトを保存および読み込む方法を学習します。このブログでは、R から LuckyTemplates にオブジェクトをインポートする方法についても説明します。
この DAX コーディング言語チュートリアルでは、GENERATE 関数の使用方法とメジャー タイトルを動的に変更する方法を学びます。
このチュートリアルでは、マルチスレッド動的ビジュアル手法を使用して、レポート内の動的データ視覚化から洞察を作成する方法について説明します。
この記事では、フィルター コンテキストについて説明します。フィルター コンテキストは、LuckyTemplates ユーザーが最初に学習する必要がある主要なトピックの 1 つです。
LuckyTemplates Apps オンライン サービスが、さまざまなソースから生成されたさまざまなレポートや分析情報の管理にどのように役立つかを示したいと思います。
LuckyTemplates でのメジャー分岐や DAX 数式の結合などの手法を使用して、利益率の変化を計算する方法を学びます。
このチュートリアルでは、データ キャッシュの具体化のアイデアと、それが結果を提供する際の DAX のパフォーマンスにどのように影響するかについて説明します。
これまで Excel を使用している場合は、ビジネス レポートのニーズに合わせて LuckyTemplates の使用を開始するのに最適な時期です。
LuckyTemplates ゲートウェイとは何ですか? 知っておくべきことすべて