ブログ

Tableau Prepで重複データを削除する方法 事前準備と接続方法・よくあるエラーを分かりやすく解説

#Tableau #Tableau Prep #重複データ削除

積極採用中
セミナー情報

重複データの削除は、データ分析の正確性を保つために非常に重要です。特にTableau Prepを使用すると、直感的な操作で効率的にデータをクレンジングすることができます。しかし、初めての方には設定や操作が複雑に感じられるかもしれません。
実際に「集計ステップを試したけど意図した結果にならない」「JOINしたらデータが何倍にも膨れ上がった」といった声は少なくありません。重複データが発生する原因はさまざまで、単純な二重登録だけでなく、テーブル結合時のキー設定ミスなど、見落としやすい落とし穴も存在します。

そこでこの記事では、Tableau Prepで重複データを削除する方法を、初心者にもわかりやすく解説します。
また、重複データを削除する際のよくあるエラーやトラブルシューティングについても、わかりやすく解説しています。

このガイドを参考にすることで、Tableau Prepを使いこなし、データの重複を効果的に削除するスキルを身につけることができるでしょう。
Tableau Prepを利用している初心者の方々にとって、この記事がデータ利活用に向けた重要なスタートラインとなれば幸いです。

 Tableau Prep自体の特徴や操作方法について学びたいという方は、以下の記事を事前に読んでいただくことをおすすめします。
    ◆Tableau prepとは 基本料金やライセンス、機能を解説

Tableau Prepと重複データについて

Tableau Prepは、データの前処理を簡単に行うためのツールで、重複データを削除したい時に非常に役立ちます。

重複データは、データの正確性を損なって分析結果に悪影響を与えるため、適切に削除することが重要です。
異なるデータソースを統合したり同じデータが繰り返し記録されたりする時に重複データが発生しますが、Tableau Prepを使うと簡単にデータのクリーニング処理ができます。

例えば、顧客IDでデータをグループ化し、最新の注文日だけを保持する設定にします。この方法により、同じ顧客の複数レコードから重複を削除することが可能です。
Tableau Prepを活用することで、データ品質の向上や分析精度の向上が期待できます。

重複データの削除はデータ処理の重要なステップであり、これを効果的に行うことで、より信頼性の高い分析結果が得られるようになるでしょう。

重複データが発生する主なパターン

重複データは、主に以下のようなケースで発生します。それぞれの原因を把握しておくと、対処がスムーズになります。

1つ目は「同一レコードの二重登録」です。手入力やシステム連携の不具合によって、まったく同じデータが複数行にわたって登録されてしまうパターンです。顧客マスタや商品マスタで特に起こりやすい問題です。

2つ目は「異なるソースの統合時の重複」です。複数のExcelファイルやデータベースを統合(ユニオン)する際に、同じレコードが別々のソースに含まれていると、統合後に重複が発生します。

3つ目は「JOIN(結合)によるデータの増殖」です。これが最も見落としやすく、かつ多くの方がつまずくポイントです。結合キーに対して一対多や多対多の関係がある場合、結合後に行数が元データよりも大幅に増加する「データの増殖」が発生します。詳しくは後述のセクションで解説します。

パターン 原因 発見しやすさ
同一レコードの二重登録 手入力ミス、システム連携の不具合 比較的発見しやすい
異なるソースの統合時 ユニオン時に同一データが重複 統合後の件数確認で発見可能
JOIN後のデータ増殖 結合キーの1:N / N:M関係 見落としやすく影響が大きい

 

【事前準備】重複データの準備と接続方法

Prepで重複データを削除するにあたり、事前に重複のあるデータを準備しておく必要があります。

今回は、移転回数の分だけ重複している企業データ(Excel)を使用します。

企業名 業種 移転年度 移転先住所 従業員数 電話番号
A株式会社 情報通信業 2000 渋谷区〇〇-〇〇 10 〇〇-〇〇〇〇-〇〇〇〇
A株式会社 情報通信業 2003 品川区〇〇-〇〇 67 〇〇-〇〇〇〇-〇〇〇〇
A株式会社 情報通信業 2010 港区〇〇-〇〇 286 〇〇-〇〇〇〇-〇〇〇〇
A株式会社 情報通信業 2020 港区〇〇-〇〇-〇 547 〇〇-〇〇〇〇-〇〇〇〇
A株式会社 情報通信業 2023 新宿区〇〇 1009 〇〇-〇〇〇〇-〇〇〇〇
B株式会社 情報通信業 2005 港区〇-〇〇 3 〇〇-〇〇〇〇-〇〇〇〇
B株式会社 情報通信業 2009 練馬区〇〇-〇 65 〇〇-〇〇〇〇-〇〇〇〇
B株式会社 情報通信業 2015 豊島区〇〇-〇〇 72 〇〇-〇〇〇〇-〇〇〇〇
B株式会社 情報通信業 2022 渋谷区〇-〇〇 176 〇〇-〇〇〇〇-〇〇〇〇
C株式会社 情報通信業 2018 世田谷区〇〇-〇〇 28 〇〇-〇〇〇〇-〇〇〇〇
C株式会社 情報通信業 2020 目黒区〇〇 42 〇〇-〇〇〇〇-〇〇〇〇
C株式会社 情報通信業 2023 台東区〇〇-〇〇 97 〇〇-〇〇〇〇-〇〇〇〇

 

Tableau Prepを開き、「+」マーク > ファイルへ > Microsoft Excelから、データソースに接続しておきましょう。

また、使用するシートをフローペインエリアにドラッグ&ドロップしておきます。

Tableau Prepで重複データを削除する方法①:集計ステップ

それでは実際に、Prepフロー上で重複データの削除を行っていきます。

重複データを削除するためには、

  • 集計ステップを使用する方法
  • 重複行の特定を使用する方法

の2パターンがあり、ここでは前者の「集計ステップを使用する方法」の手順をご紹介します。

集計ステップの追加

データがワークフローに追加されたら、「集計」ステップを追加します。このステップは、Tableau Prepの左側のパネルにある「ステップの追加」ボタンから選択できます。

集計設定

「集計」ステップが開いたら、重複データを特定したいフィールドを「グループ化」セクションにドラッグします。そして、その他のフィールドを「集計」セクションにドラッグします。このステップで、選択したフィールドに基づいて行がグループ化され、各グループ内の行が1つの行に集約されます。サンプルデータだと移転しても同じな「企業名」「業種」「電話番号」の3つをドラッグ&ドロップします。

結果の確認

クリーニングのステップを追加し、表示すると前のステップで選択した項目でデータが集計され、重複が削除されます。

この集計ステップを使用することで、重複データを特定し削除することができます。ただし、どのフィールドを「グループ化」セクションに持っていくかなどは分析の目的や重複データの性質によります。適切な選択を行うことが、重複データを効率的に処理するための鍵となります。

Tableau Prepで重複データを削除する方法②:重複行の特定【おすすめ】

続いて、「重複行の特定を使用する方法」の手順をご紹介します。

これはバージョン2024.1より追加された新しい機能であり、非常に利便性が高いため、重複データを削除する場合はこちらの方法を使うのがおすすめです。

・新機能の詳細はこちら(Tableau公式):重複行の識別

クリーニングステップの追加

ステップの右側に表示される「+」をクリックし、「クリーニングステップ」を選択します。

重複行の特定

ツールバーの中央付近にある「重複行の特定」をクリックします。

すると、Prep側で自動的に計算フィールドを作成してくれます。
変更ペインに追加された変更履歴をマウスオーバーし、鉛筆マークをクリックして計算式の中身を確認しましょう。

上図のようなSQLが作成されているかと思います。

今回の重複フィールドは、[企業名][業種][電話番号]の3つのみですので、PARTITION内にある[移転年度][移転先住所][従業員数]は削除して保存し直しましょう。

結果の確認

重複行が特定され、[重複する行はありますか?]というフィールドの項目が「一意」と「重複」になりました。

「一意」を右クリック > 保持 をクリックすることで、重複データを削除できます。

重複データの削除ができない時のトラブルシューティング

重複データの削除がうまく行かない場合、以下に示す一連のトラブルシューティング手順を試すことで問題を解決することができる場合があります。

データの確認

まず初めに、データ自体に問題がないか確認します。具体的には、全てのフィールドが正しくフォーマットされているか、データに予期しない値やスペースが含まれていないかなどをチェックします。

集計設定の再確認

次に、集計ステップの設定を再確認します。特に、「グループ化」セクションに追加したフィールドが正しいものか、また集計関数が適切に選択されているかを確認します。

データの前処理

データのクリーニングステップを導入して、データの前処理を行うことも有効です。具体的には、不要な空白の削除、大文字小文字の統一、特殊文字の削除などを行うことで、重複の検出精度が向上する場合があります。

ソフトウェアのアップデート

また、Tableau Prepの最新バージョンを使用しているか確認します。時々、ソフトウェアのバグが問題を引き起こすことがあるため、最新のアップデートを適用することで問題が解決する場合があります。

これらのトラブルシューティング手順を試すことで、Tableau Prepにおける重複データの削除問題を解決することができます。それでも問題が解決しない場合は、Tableauのサポートチームに連絡することを検討してみてください。

JOIN(結合)後にデータが増殖するケースと対処法

Tableau Prepで複数のテーブルを結合した際、「行数が想定よりも大幅に増えてしまった」という経験はないでしょうか。これはJOIN後の重複データ増殖と呼ばれる現象で、結合キーの設定に起因するケースがほとんどです。

なぜJOINでデータが増えるのか

JOINは、指定したキー列の値が一致する行同士を組み合わせる処理です。このとき、片方のテーブルで1つのキー値に対して複数の行が存在する(一対多の関係)と、もう一方のテーブルの該当行がその分だけ複製されます。
たとえば、顧客マスタ(1顧客1行)と注文テーブル(1顧客に複数注文)を顧客IDで結合すると、顧客マスタ側の情報が注文件数分だけ繰り返されます。これは正常な動作ですが、意図しない場合は「重複が発生した」と感じる原因になります。

多対多の結合によるデータ増殖

さらに注意が必要なのが、両方のテーブルで結合キーに重複がある「多対多」の結合です。たとえば、テーブルAにキー値「001」が3行、テーブルBにも「001」が4行ある場合、結合後は3×4=12行に増殖します。
このような意図しないデータの爆発的増加を防ぐためには、結合前に各テーブルのキー列の重複状況を確認することが重要です。

JOIN後の増殖を防ぐ・解消するための対処法

対処法1:結合前に片方のテーブルを集計する

結合する前に、一対多の「多」側のテーブルを集計ステップで集約しておくことで、結合後のデータ増殖を防ぐことができます。たとえば、注文テーブルを顧客IDごとに集計し、注文件数や合計金額だけを持つ1行にまとめてから結合します。まとめる際の粒度や単位については考慮が必要です。たとえば、日付フィールドを「日」単位でまとめるのか「月」単位でまとめるのかによって、集計後の行数や結果が大きく変わります。目的に合った粒度を事前に整理した上で設定しましょう。

対処法2:結合後に重複行を特定して削除する

結合後のデータに対して、先ほどお話しした「重複行の特定」機能やROW_NUMBER関数を使い、各グループ内で1行だけを残すフィルタリングを行う方法です。

対処法3:結合条件を見直す

結合キーが適切かどうかを再確認します。本来は複合キー(例:顧客ID+注文日)で結合すべきところを、単一キー(顧客IDのみ)で結合していると、意図しない多対多結合になることがあります。Tableau Prepの結合ステップ画面で、結合結果の行数が元データと比較して大幅に増えていないかを必ず確認しましょう。

対処法4:Tableau側で計算フィールド・LOD計算を用いて対応する

増殖したデータ自体に問題がなく、1〜3の対応が難しい場合は、Tableauでのビジュアライゼーション作成時に計算フィールドやLOD計算を使って対応する方法もあります。

この方法は、データに重複があることを前提として進めるアプローチです。具体的には、LOD計算の FIXED 式を使って集計レベルを明示的に指定する方法や、COUNTD(重複を除いたカウント)を組み合わせた計算フィールドで正しい集計値を算出する方法があります。ただし、データの増殖パターンによって適切な計算式が異なるため、結合前後の行数を確認しながら慎重に設計する必要があります。

Prepフロー作成時のよくあるエラーと対応方法

Tableau Prepを使い始めたばかりの初心者でも、エラーに直面することは少なくありません。

ここでは、よくあるエラーとその対応方法をご紹介します。

フィールドが見つからない

フィールドが見つからない場合、まずデータソースとフィールドの設定を確認します。データソースのスキーマ変更やフィールド名の誤りが原因で、必要なフィールドが見つからないことが多いです。

例えば、新しいデータソースをインポートした際にフィールド名が変わってしまった場合、エラーが発生します。
この場合は、データソースを再確認してフィールド名が正しいかどうか確認します。場合によっては、フィールドの名前を修正する必要もあるでしょう。

フィルターが正しく動作しない

フィルターが正しく動作しない場合、フィルター条件とデータの整合性を確認します。
フィルター条件が適切でない場合や、フィルター対象のデータが不正確である場合、期待通りの結果が得られません。

例えば、文字列フィールドに対して数値フィルターを適用しようとすると、エラーが発生します。
この場合、フィルター条件を見直し、適切なフィールドタイプに適用するよう修正します。

また、フィルターの適用順序も確認し、必要に応じて変更るようにしましょう。

結合ができない

結合ができない場合、結合条件とフィールドの整合性を確認します。キーとなるフィールドが一致していない場合や、データ型が異なる場合、結合が正しく行われません。

例えば、文字列型のフィールドと数値型のフィールドを結合しようとするとエラーが発生します。
この場合、両方のフィールドが同じデータ型であることを確認し、必要に応じてデータ型を一致させる必要があります。

また、あわせて結合条件が適切かどうかの再確認もしておきましょう。

データソースが接続できない

データソースに接続できない場合、接続設定とネットワーク環境を確認しましょう。接続情報の誤りやネットワーク設定の問題が原因で、データソースに接続できないことがあります。

例えば、データソースのURLやログイン情報が正しく設定されていない場合、接続エラーが発生します。
この場合、接続情報を再確認し、正しい情報を入力します。

また、ファイアウォールやプロキシの設定も確認し、必要に応じてネットワーク管理者への問い合わせも行いましょう。

ワークフローが実行できない

ワークフローが実行できない場合、各ステップの設定とデータの整合性を確認しましょう。
設定ミスやデータの不整合が原因で、ワークフローが正常に実行されないことがあります。

例えば、データの型が一致しないフィールドを使用している場合、エラーが発生します。
この場合、各ステップを順に確認して、問題のある箇所を特定しておきましょう。

特にデータ型やフィールドの設定を再度見直し、適切に修正します。これらのエラーとその対応方法を知ることで、Tableau Prepをスムーズに活用できるようになり、データ処理効率の向上に繋がるでしょう。

まとめ

この記事を通して、Tableau Prepでの重複データ削除方法について詳細に解説してきました。

重複データは、データ分析において誤解を招く要因となり得るため、適切に削除することが重要です。
まず、Tableau Prepの基本的な操作方法と重複データの準備について説明し、その後、重複データを削除するための具体的な手順を2つの方法で紹介しました。
集計ステップを追加する方法と、クリーニングステップで重複行を特定する方法の両方を解説しましたので、状況に応じて使い分けることができます。

また、JOIN(結合)後にデータが増殖してしまうケースについても解説しました。重複データが削除できない原因が、削除ステップではなく結合ステップにあるケースは意外と多いため、「おかしいな」と感じたらまず結合前後の行数を確認する習慣をつけておくとよいでしょう。

これらの情報を活用して、Tableau Prepでのデータ処理がスムーズに進むようになることを願っています。
Tableau Prepを使いこなすことでデータ分析の精度を高め、ビジネスインサイトを深める一助となれば幸いです。

<Tableau>
弊社ではSalesforceをはじめとするさまざまな無料オンラインセミナーを実施しています!
>>セミナー一覧はこちら

また、弊社ではTableauの導入支援のサポートも行っています。こちらもぜひお気軽にお問い合わせください。
>>Tableauについての詳細はこちら

CONTACT
お問い合わせ

ご相談やご依頼、病院マスタなどについてのお問い合わせはこちらのお問い合わせフォームから。

サービスなどについてのお問い合わせ 病院マスタについてのお問い合わせ

メールお問い合わせ