データの集計、結合またはユニオン
データの集計、結合、またはユニオン作成を行って、分析用にデータをグループ化したり結合したりできます。
注: バージョン 2020.4.1 以降では、Tableau Server および Tableau Cloud でフローの作成と編集を行えるようになりました。このトピックの内容は、特に記載がない限り、すべてのプラットフォームに適用されます。Web 上でのフローの作成の詳細については、Tableau Server(新しいウィンドウでリンクが開く) および Tableau Cloud(新しいウィンドウでリンクが開く) ヘルプの「Web 上の Tableau Prep」を参照してください。
値の集計とグループ化
フローにより生成されるデータ量を削減するため、またはデータを一緒に結合したりユニオンを作成する可能性がある他のデータとそろえたりするため、データの一部で粒度を調整することが必要な場合があります。たとえば、売上テーブルを顧客テーブルと結合する前に、顧客別の売上データを集計する必要があるかもしれません。
データの粒度を調整する必要がある場合は、[集計] オプションを使用して、データをグループ化して集計するステップを作成します。データが集計されるかグループ化されるかは、データ型 (文字列、数字、または日付) によって異なります。
[フロー] ペインでプラス アイコンをクリックし、[集計] を選択します。[フロー] ペインに新しい集計ステップが表示され、[プロファイル] ペインが更新されて集計とグループのプロファイルが表示されます。
フィールドを左側のペインから [グループ化したフィールド] ペイン (行を作成するフィールド) または [集計フィールド] ペイン (グループ化したフィールドのレベルで集約および表示されるデータ) にドラッグします。
また、以下も実行できます。
2 つのペイン間でフィールドをドラッグ アンド ドロップする。
リストでフィールドを検索し、集計に含める必要があるフィールドのみを選択する。
フィールドをダブルクリックし、左側または右側のペインに追加する。
フィールドの機能を、適切なペインに自動的に追加されるように変更する。
[すべて追加] または [すべて削除] をクリックし、フィールドの一括適用または削除を行う。
フィールドに特定のクリーニング操作を適用する。使用可能なクリーニング操作の詳細については、クリーニング操作について(新しいウィンドウでリンクが開く)を参照してください。
次の例では、地域別、売上年別に、利益と数量、および平均割引率の集計された合計が表示されています。
フィールドは、データ型に応じて [グループ化したフィールド] 列と [集計フィールド] 列に配分されます。グループまたは集計のタイプを変更するには、グループまたは集計のタイプ (AVG、SUM など) の見出しをクリックします。
集計とグループのプロファイルの下のデータ グリッドには、グループまたは集計のメンバーのサンプルが表示されています。
フィールドに対して行ったすべてのクリーニング操作は、[変更内容] ペインで追跡されます。
データの結合
分析するデータは多くの場合、特定のフィールドで関連付けられたテーブルの集まりで構成されています。結合は、共通のフィールド上の関連データを組み合わせる方法です。結合を使用したデータの組み合わせの結果は、データのフィールドを追加することによって通常は横方向に拡張されたテーブルです。
結合の操作は、フローの任意の場所で行うことができます。フローの早いところで結合すると、データ セットを理解し、注意が必要なエリアをすぐに明らかにするのに役立ちます。
Tableau Prep は以下の結合タイプをサポートしています。
結合タイプ | 説明 |
---|---|
左 | 各行には、左のテーブルのすべての値と、右のテーブルでそれに一致する値が含まれます。左のテーブルの値に対応する一致が、右のテーブルにない場合、結合結果に NULL 値が表示されます。 |
内部 | 各行には、両方のテーブルで一致する値が含まれます。 |
右 | 各行には、右のテーブルのすべての値と、左のテーブルでそれに一致する値が含まれます。右のテーブルの値に対応する一致が、左のテーブルにない場合、結合結果に NULL 値が表示されます。 |
左のみ | 各行には、右のテーブルの値と一致しない、左のテーブルの値のみが含まれます。右のテーブルのフィールド値は、結合結果に NULL 値として表示されます。 |
右のみ | 各行には、左のテーブルの値と一致しない、右のテーブルの値のみが含まれます。左のテーブルのフィールド値は、結合結果に NULL 値として表示されます。 |
非内部 | 各行には、右および左のテーブルで一致しないすべての値が含まれます。 |
完全 | 各行には、両方のテーブルのすべての値が含まれます。いずれかのテーブルの 1 つの値と一致する値が他のテーブルない場合、結合結果に NULL 値が表示されます。 |
結合を作成するには、次のいずれかを実行します。
次のいずれかの方法を使用し、2 つの表を結合します。
- 複数のテーブルを [フロー] ペインに追加し、関連付けるテーブルを選択してもう一方のテーブルにドラッグし、[結合] オプションを表示させます。
- アイコンをクリックしてメニューから [結合] を選択し、次にもう一方の入力を手動で結合に追加し、結合句を追加します。
注: テーブルのリレーションシップが定義され、関連フィールドを含むテーブルに接続する場合は、[結合] を選択して関連テーブルのリストから選択できます。2 つのテーブル間のリレーションシップを構成するフィールドに基づいて、Tableau Prep により結合が作成されます。
テーブルのリレーションシップを使用したコネクタの詳細については、「インプット ステップでのデータの結合(新しいウィンドウでリンクが開く)」を参照してください。新しい結合ステップがフローに追加され、[プロファイル] ペインが更新されて結合のプロファイルが表示されます。
結合を確認して構成するには、以下を実行します。
[結合結果のサマリー] を見直し、結合タイプおよび結合条件の結果として含まれているフィールドと除外されているフィールドの数を確認します。
[結合タイプ] でベン図をクリックし、必要な結合のタイプを指定します。
[適用した結合句] でプラス アイコンをクリックするか、既定の結合条件として選択したフィールドで、結合句を指定または編集します。結合条件で選択したフィールドは、テーブルと結合との間で共通しているフィールドです。
[結合句の推奨事項] に表示されている推奨の結合句をクリックし、適用した結合句のリストにその句を追加することもできます。
結合結果の検査
結合プロファイルのサマリーには結合についてのメタデータが表示され、結合に期待するデータが含まれていることを検証するのに役立ちます。
適用した結合句: 既定で Tableau Prep は、結合されているテーブルに含まれる共通するフィールド名に基づいて、最初の結合句を定義します。必要に応じて結合句を追加・削除します。
結合タイプ: 既定で、結合を作成する場合には、Tableau Prep はテーブル間の内部結合を使用します。接続先のデータによっては、左結合、内部結合、右結合、左のみ結合、右のみ結合、非内部結合、完全結合を使用できる場合があります。
結合結果のサマリー: 結合結果のサマリーは、結合のテーブルで含まれている値と除外されている値の配分を表示します。
各 [含める] バーをクリックすると、結合に含まれている結合プロファイルのデータを分離して表示できます。
各 [除外済み] バーをクリックすると、結合から除外されている結合プロファイルのデータを分離して表示できます。
[含める] バーと [除外済み] バーの任意の組み合わせをクリックし、データを累積的な観点から表示します。
結合句の推奨事項: [適用した結合句] リストに追加するには、推奨される結合句の隣にあるプラス アイコンをクリックします。
[結合句] ペイン: [結合句] ペインでは、結合句の各フィールドの値を表示できます。結合句の条件を満たさない値は赤いテキストで表示されます。
[結合結果] ペイン: [結合結果] ペインに、変更する必要がある値が表示される場合、このペインでその値を編集できます。
結合に関する一般的な問題
データの結合後に期待した結果が表示されない場合は、フィールド値に対していくらかの追加クリーニングの実行が必要な場合があります。以下の問題があると、値が一致していないと Tableau Prep がみなし、結合から除外されます。
大文字化が異なる: "My Sales" と "my sales"
スペルが異なる: "Hawaii" と "Hawai'i"
スペルミスまたはデータ入力エラー: "My Company Health" と "My Company Heath"
名前の変更: "John Smith" と "John Smith Jr."
略語: "My Company Limited" と "My Company Ltd"
余分な区切り: "Honolulu" と "Honolulu (Hawaii)"
余分なスペース: 文字間の余分なスペース、タブ付きのスペース、先頭または末尾の余分なスペースを含む
ピリオドの使用の不統一: "Returned, not needed" と "Returned, not needed."
フィールド値にこれらの問題が含まれていた場合、[結合句] で直接フィールド値を修正できます。または、[結合結果のサマリー] の [除外済み] バーをクリックして除外済みの値を操作し、プロファイル カード メニューでクリーニング操作を使用できます。
結合ステップで利用可能な別のクリーニング オプションの詳細については、「クリーニング操作について(新しいウィンドウでリンクが開く)」を参照してください。
一致しないフィールドの修正など
結合句で直接、一致しないフィールドを修正できます。修正の必要があるフィールドで、値をダブルクリックするか、その値を右クリックしてコンテキスト メニューから [値の編集] を選択します。データの変更内容は追跡され、結合ステップの [変更内容] ペインに直接追加されます。
また、[結合句] ペインで複数の値を選択して保持、除外、またはフィルターしたり、[結合結果] ペインで他のクリーニング操作を適用したりすることもできます。どのフィールドを変更するか、また変更が結合プロセスのどこで行われるかに応じ、結合の前または後に変更が適用され、修正された結果が得られます。
フィールドのクリーニングの詳細については、「クリーニング操作の適用(新しいウィンドウでリンクが開く)」を参照してください。
データのユニオン
ユニオンとは、あるテーブルの行を別のテーブルに追加することによりデータを組み合わせる方法です。たとえば、あるテーブルの新しい取引を、別のテーブルの過去の取引リストに追加する必要があるかもしれません。ユニオンを作成するテーブルではフィールド数とフィールド名が同じであり、フィールドは同じデータ型であることを確認してください。
ヒント: パフォーマンスを最大化するには、単一のユニオンに対する入力数を最大でも 10 にします。10 個以上のファイルや表でユニオンを行う必要がある場合は、インプット ステップでファイルのユニオンを行ってみてください。このタイプのユニオンの詳細については、「インプット ステップでのファイルおよびデータベース テーブルのユニオン作成(新しいウィンドウでリンクが開く)」を参照してください。
結合のように、フローの任意の場所でユニオンの作成操作を使用できます。
ユニオンを作成するには、次を実行します。
最低 2 つのテーブルを [フロー] ペインに追加してから、関連するテーブルを選択し、他のテーブルに [ユニオン] オプションが表示されるまでドラッグします。 アイコンをクリックし、メニューから [ユニオン] を選択することもできます。新しいユニオン ステップが [フロー] ペインに追加され、[プロファイル] ペインが更新されてユニオンのプロファイルが表示されます。
テーブルをユニオン テーブルに、[追加] オプションが表示されるまでドラッグし、追加テーブルをユニオンに追加します。
ユニオンのプロファイルで、ユニオンについてのメタデータを確認します。ユニオンからテーブルを削除するほか、一致しないフィールドについての詳細を表示することもできます。
ユニオン結果の検査
ユニオンの作成後、ユニオンの結果を検査し、ユニオンに含まれるデータが期待通りのものであることを検証します。ユニオンデータを検証するには、次の領域を確認します。
ユニオンのメタデータの確認: ユニオンのプロファイルには、ユニオンに関するメタデータがいくつか表示されます。ここで、ユニオンを構成する各テーブル、その結果生じるフィールド数、一致しないフィールドの存在を確認できます。
各フィールドの上の色の確認: ユニオンのサマリーに一覧表示される各フィールドの隣、およびユニオンのプロファイルにある各フィールドの上には、一連の色が表示されます。色はユニオンの各テーブルと対応しています。
対象のフィールドについてすべてのテーブルの色が表示される場合は、ユニオンがそのフィールドで正しく実行されています。テーブルの色が欠落している場合は、不一致のフィールドがあることを示しています。
不一致のフィールドとは、類似のデータを持ちながら、何らかの点で異なるフィールドです。一致しないフィールドの一覧、そのソースであるテーブルを、ユニオンのサマリーで確認できます。フィールドのデータを詳細に確認したい場合は、ユニオンのプロファイルで [不一致のフィールドのみ表示] のチェックボックスを選択し、不一致のフィールドを分離します。
以下の「一致しないフィールドの修正」セクションの提案のいずれかに従えば、これらのフィールドを修正できます。
一致しないフィールドの修正
ユニオンのテーブルが一致しない場合、ユニオンにより追加のフィールドが生成されます。追加のフィールドは、適切なコンテキストから除外されている有効なデータです。
フィールド不一致の問題を解決するには、不一致のフィールドを一緒にマージする必要があります。
フィールドが一致しないいくつかの理由の可能性があります。
対応しているフィールドの名前が異なる: テーブル間で対応しているフィールドの名前が異なる場合、ユニオンの提案を使用するか、[不一致のフィールド] リストでフィールドを手動でマージするか、ユニオンのプロファイルでフィールド名を変更して不一致のフィールドを一緒にマージすることができます。
ユニオンの提案を使用する場合は次の作業を行います。
[不一致のフィールド] リストで不一致のフィールドをクリックします。一致の提案がある場合、一致するフィールドが黄色くハイライト表示されます。
一致の提案は、類似のデータ型とフィールド名を持つフィールドに基づいて行われます。
ハイライト表示されたフィールドにカーソルを合わせてプラス ボタンをクリックすると、各フィールドがマージされます。
[不一致のフィールド] リストで手動でフィールドをマージする場合は、次の作業を行います。
リストから 1 つまたは複数のフィールドを選択します。
選択したフィールドを右クリック (MacOS では Ctrl を押しながらクリック) すると、マージが有効である場合 [フィールドのマージ] メニュー オプションが表示されます。
フィールドを右クリックした際に [利用できるオプションがありません] が表示された場合は、マージできるフィールドではありません。例えば、同じ入力が元となる 2 つのフィールドをマージしようとするとこれが表示されます。
[フィールドのマージ] をクリックすると、選択したフィールドがマージされます。
ユニオンのプロファイルペインでフィールド名を変更する場合は、フィールド名を右クリックしてさらに [フィールド名の変更] をクリックします。
対応しているフィールドの名前は同じだが型が異なる: デフォルトでは、対応しているフィールドの名前が一致してもフィールドのデータ型が一致しない場合、Tableau Prep はいずれかのフィールドのデータ型を変更し、互換性があるようにします。Tableau Prep がこの変更を行う場合、マージされたフィールドの上部に [データ型の変更] アイコンで示されます。
Tableau Prep により正しいデータ型が選択されない場合もあります。そのような場合にマージを元に戻すには、[データ型の変更] アイコンを右クリック (MacOS では Ctrl を押しながらクリック) し、[異なるタイプの入力を区切る] を選択します。
その後、いずれかのフィールドのデータ型を最初に変更し、次にフィールドをマージする際のその他のオプションの提案を使用してフィールドを再度マージすることができます。対応しているテーブルのフィールド数が異なる: テーブルのユニオンを作成するには、ユニオンの各テーブルに同じ数のフィールドが含まれている必要があります。ユニオンの作成により追加のフィールドが生成される場合には、そのフィールドを既存フィールドにマージします。
フィールドをマージする際のその他のオプション
前述のセクションで説明したフィールドをマージする方法だけでなく、次のいずれかの方法でフィールドをマージすることもできます。フィールドのマージは任意のステップで行うことができますが、出力ステップは例外です。
同じファイルのフィールドをマージする方法については、「フィールドのマージ」を参照してください。
フィールドをマージするには、次のいずれかを実行します。
1 つのフィールドを別のフィールドにドラッグ アンド ドロップします。[マージ フィールドにドロップする] インジケーターが表示されます。
複数のフィールドを選択し、選択項目内で右クリックしてコンテキスト メニューを開いてから、[フィールドのマージ] をクリックします。
複数のフィールドを選択し、コンテキスト依存のツールバーで [フィールドのマージ] をクリックします。