列の値でフィルター処理する
- [アーティクル]
-
-
Power Query では、列の特定の値に従って行を含めたり除外したりできます。 列の値をフィルター処理するには、次の 3 つの方法から選択できます。
列にフィルターを適用すると、次の図に示すように、列見出しに小さなフィルター アイコンが表示されます。
列ヘッダーには、逆三角形のアイコンが表示されています。 このアイコンを選択すると、並べ替えとフィルターのメニューが表示されます。 このメニューを使用して、列にフィルターを適用したり、列からフィルターを削除したりできます。
注意
この記事では、データのフィルター処理に関連した内容に焦点を絞っています。 Power Query の並べ替えオプションと列を並べ替える方法の詳細については、「列の並べ替え」を参照してください。
[空の削除] コマンドは、列に 2 つのフィルター規則を適用します。 最初の規則では、null 値をすべて取り除きます。 2 番目の規則では、空白の値をすべて取り除きます。 たとえば、1 つの null 値と 1 つの空白セルが含まれている 5 行の 1 つのテキスト列だけを含むテーブルがあるとします。
注意
null 値は、値がないことを表す Power Query 言語における特定の値です。
次に、次の画像に示すように、並べ替えとフィルターのメニューから [空の削除] を選択します。
このオプションはまた、次の画像に示すように、[ホーム] タブの [行の削除] ドロップダウン オプションにある [行の削減] グループから選択することもできます。
[空の削除] 操作の結果、空の値が含まれていない同じテーブルが表示されます。
列にフィルターが適用されると、並べ替えとフィルターのメニューに [フィルターのクリア] コマンドが表示されます。
並べ替えとフィルターのメニューにある一覧は 自動フィルター 一覧と呼ばれ、列内の一意の値を示します。 この一覧に含める値は手動で選択したり、選択解除したりできます。 フィルターでは、選択されたすべての値が考慮に入れられ、選択されていない値はすべて無視されます。
この自動フィルターのセクションには、一覧から値を検索するために役立つ検索バーもあります。
注意
自動フィルター一覧を読み込むと、その列内の上位 1,000 個の個別の値のみが読み込まれます。 フィルター処理している列内の個別の値が 1,000 個を超えている場合は、そのフィルター リストに含まれる値の一覧が不完全である可能性があることを示すメッセージが表示され、[さらに読み込む] リンクが表示されます。 [さらに読み込む] リンクを選択すると、さらに 1,000 個の個別の値が読み込まれます。
- 正確に 1,000 個の個別の値が再び見つかった場合は、この一覧がまだ不完全である可能性があることを示すメッセージと共に一覧が表示されます。
- 1,000 未満の個別の値が見つかった場合は、値の完全な一覧が表示されます。
列内の特定のセルを右クリックして、その値のショートカット メニューを開くことができます。 小さなフィルター アイコンをポイントし、使用するフィルター オプションを選択します。
注意
Power Query では、列のデータ型に基づいて型固有のフィルターを表示します。
並べ替えとフィルターのメニューには、列のデータ型によって異なるコマンドが表示されます。 次の画像は、日付列、テキスト列、数値列の例を示しています。
型固有のフィルターのいずれかを選択する場合は、[行のフィルター] ダイアログを使用して、列のフィルター規則を指定します。 そのダイアログを次の画像に示します。
[行のフィルター] ダイアログ ボックスには、[基本] と [詳細] の 2 つのモードがあります。
基本モードでは、型固有のフィルターに基づいて最大 2 つのフィルター規則を実装できます。 前の画像では、選択された列の名前が [が次と一致する行の保持] というラベルの前に表示され、これらのフィルター規則がどの列に対して実装されるかがわかるようになっていることに注意してください。
たとえば、次のテーブルで、[Account Code] を PA または PTY のどちらかで始まるすべての値でフィルター処理したいとします。
それを行うには、[Account Code] 列の [行のフィルター] ダイアログ ボックスに移動し、必要な一連のフィルター規則を指定します。
この例では、まず [基本] ボタンを選択します。 次に、["Account Code" が次と一致する行の保持] で、[次の値で始まる] を選択して「PA」と入力します。 次に、[または] ボタンを選択します。 [または] ボタンの下で、[次の値で始まる] を選択して「PTY」と入力します。 次に、[OK] を選択します。
その操作の結果、求めていた一連の行が表示されます。
詳細モードでは、テーブル内のすべての列から型固有のフィルターをいくつでも必要な数だけ実装できます。
たとえば、前のフィルターを基本モードで適用するのではなく、[Account Code] に 4 で終わるすべての値が表示されるようなフィルターを実装したいとします。 また、[Sales] 列に $100 を超える値が表示されるようにすることもできます。
この例では、まず [詳細] ボタンを選択します。 最初の行では、[列名] で [Account Code]、[演算子] で [次の値で終わる]、[値] で [4] を選択します。 2 行目では、[および] を選択してから、[列名] で [Sales]、[演算子] で [が次の値より大きい]、[値] で [100] を選択します。 [OK] を選択します。
その操作の結果、両方の条件を満たす 1 行だけが表示されます。
注意
[句の追加] を選択することにより、句をいくつでも必要な数だけ追加できます。 すべての句が同じレベルで動作するため、他のフィルターに依存するフィルターを実装する必要がある場合は、複数のフィルター手順の作成の検討が必要になる可能性があります。