Power Query のデータ型とコネクタ

Power Query のデータ型とコネクタ

このチュートリアルでは、 Power Query のデータ型とコネクタについて説明します。データ型とは何かを学び、それらが相互にどのように互換性があるかを確認します。Power Query M言語の演算子についても学習します。これらは、クエリがどのように結果と回答を生成するかを理解するのに役立ちます。

目次

Power Query のデータ型

M言語には、プリミティブ型構造型の2 つの主要なグループに分割できる小さな組み込み型のセットがあります。

データ レポートに表示される最も一般的なプリミティブ タイプは次のとおりです。

Power Query のデータ型とコネクタ

Anyは、すべての値を分類する型です。これは、すべての値がanyのサブタイプであることを意味します。画像の 3 行目には、時刻日付などの複合型も表示されます。

一方、最も一般的な構造タイプは次のとおりです。

Power Query のデータ型とコネクタ

型を指定することも可能です。

Power Query のデータ型とコネクタ

Power Query には書式設定のようなものが存在しないため、帰属型はプリミティブ型の上に適用される形式ではありません。書式設定は、Excel や LuckyTemplates など、Power Query からデータを受け取るアプリケーションでのみ行うことができます。

データ型と形式は同じものを指すわけではないため、両者の区別に注意する必要があります。形式は、基になる値に影響を与えることなく数値を表示する方法を制御します。一方、データ型は、記述された型と一致するように値の精度を変更します。

Mエンジンは実行時に型チェックを行いません。したがって、列が数値型であり、それがテキスト型であることをエンジンに伝えても、問題は発生しません。しかし、数値型を必要とする関数でその列を呼び出すと、事態は破綻し始めます。これは、 Mには自動型変換がないためです。

Power Query データ型の互換性

データ型間にも型の互換性が存在します。値の型と、別の値の型との互換性の間には違いがあります。

互換性チェックは、null 許容のプリミティブ型レベルで実行されます。M は、最初のタイプに準拠するすべての値が 2 番目のタイプにも準拠する場合に限り、別のMタイプと互換性があります。そうでない場合は、型の不一致エラーが発生します。

これをわかりやすく説明するために、データ型変換マトリックスの概要を次に示します。

Power Query のデータ型とコネクタ

式と演算子

緑と赤の円がそれ自体を物語っています。一方、青い円は、変換によって元の値に値が追加されることを意味し、オレンジ色の円は、元の値が切り捨てられることを意味します。

Power Query M形式言語には、式で使用できる一連の演算子が含まれています。演算子はオペランドに適用されて式を形成します。演算子の意味は、オペランドの値のタイプによって異なります。

いくつかのサンプル式を次に示します。

Power Query のデータ型とコネクタ

最初の式では、数値 1 と 2 がオペランドで、プラス記号または加算記号が演算子です。この式は、数値 3 を生成します。ただし、2 番目と 3 番目の式を見ると、数値にテキスト値を追加すること、または 2 つのテキスト値を追加することはサポートされていないことがわかります。

これは、 Excel、DAX、およびMの明確な違いの 1 つです。Excel とDAX の数式は自動型変換を実行しますが、Mエンジンは実行しません。プラス記号の代わりにアンパサンド ( & ) を使用すると、2 つの値が結合されます。

アンパサンド ( & ) は、上の画像の 4 番目の式のように 2 つのテキスト文字列を連結する演算子です。また、オペランドの値のタイプに応じて演算子の意味がどのように変化するかについても示します。これは、リストの組み合わせやレコードのマージも可能であるためです。

型の不一致エラーは、よく発生するものです。したがって、データに問題がある場合は、データ型が正しく宣言されていないことを意味します。これらのエラーは、 Mコードを変更または作成するときにも頻繁に発生します。


Power Query カスタム列の M コード | LuckyTemplates
Power Queryエディター: クエリのステージング

結論

Power Query でデータ レポートを作成する際の最も重要な準備は、物事がどのように機能するかを理解することです。これは、LuckyTemplates で適切なデータ生成レポートを構築するために、Mコードを適切に記述し、正しいデータ型を設定するのに役立ちます。基本をマスターすると、大きな利点が得られ、データ開発スキルが向上します。

メリッサ


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